android - 将 JSON 数据从 android 发送到 compojure 服务器

标签 android json http clojure compojure

我正在尝试将一些 json 数据从 Android 发送到 clojure/compojure 服务器

但是我似乎无法正确发送或接收数据,而且我不太确定问题出在 Android 还是 compojure 上。

这是java代码

String PATH = "http://localhost:8080/get_position";
DefaultHttpClient mClient = new DefaultHttpClient();

HttpGet httpget = new HttpGet(PATH);
HttpResponse response;
httpget.getParams().setParameter("measurements", measurements.toString());

response = mClient.execute(httpget);
HttpEntity entity = response.getEntity();

其中 mesurements 是 JSON 对象。

以及处理路由的主要代码

(defroutes main-routes
   (POST "/get_position" {params :params}
      (emit-json (find-location (:results (read-json (:measurements params))))))
   (route/not-found "Page not found"))

请求被正确接收,但是我得到一个错误,params is nil

java.lang.IllegalArgumentException: No implementation of method: :read-json-from of protocol: #'clojure.data.json/Read-JSON-From found for class: nil   

有没有人发现此代码有问题或知道执行此操作的正确方法?

最佳答案

params 映射以字符串作为键,我相信,而不是关键字。

关于android - 将 JSON 数据从 android 发送到 compojure 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8555701/

相关文章:

ajax - 这个奇怪的 httpError 是什么意思?

http - play framework 同时运行多个项目

java - 如何在 OnTouchListener 中获取初始 X、Y 值(第一次触摸 ACTION_DOWN)

安卓图像尺寸

java - Dart future 值请求不兼容

c - C中通过http POST发送二进制数据

android - android_sdk_root 在哪里?以及如何设置它。?

java - 如何在surfaceView render() 中延迟图像出现

javascript - React 解析具有多个单词标识符的 JSON 数据

javascript - 将 js 对象作为 json 传递给 jquery?