我正在使用 Processing 2.0.2 并导入 java 的java.net
、javax.net
和java.io
类。
我正在尝试将 JSONObject 发送到“ https://www.bitstamp.net/api/balance/ ”。
JSONObject 包含登录信息。我用这个函数创建它:
JSONObject BitstampLoginJSON() {
JSONObject loginJSON = new JSONObject();
loginJSON.setString("password", "mypassword");
loginJSON.setString("user", "username");
return loginJSON;
}
我成功设置了连接,然后将连接传递给此函数以发送请求。
void SendBitstampBalanceRequestFromConnection(HttpsURLConnection givenCon) {
try {
givenCon.setDoOutput(true);
givenCon.setDoInput(true);
givenCon.setRequestProperty("Content-Type", "application/json");
givenCon.setRequestProperty("Acccept", "application/json");
givenCon.setRequestMethod("POST");
givenCon.connect();
OutputStreamWriter requestSender = new OutputStreamWriter(givenCon.getOutputStream());
String JSONString = BitstampLoginJSON().toString();
requestSender.write(JSONString);
requestSender.flush();
requestSender.close();
}
catch(IOException e) {
e.printStackTrace();
}
}
我收到响应代码 200 并返回“OK”消息。Bitstamp 返回一个 JSON 对象,内容如下:
"error": "缺少用户和/或密码 POST 参数"}
我很困惑为什么 Bitstamp 没有接收或接受我的 JSONObject。我已经阅读了关于 JSON 和 POSTing 的大约六篇关于 SO 的帖子,但我似乎无法理解。