0
我使用此tutorial來使用HttpRULConnection將信息發佈到服務器。以下是我的代碼:無法使用httpurlconnection發佈參數
String urlParameters = "username=" + username + "®id=" + uuid;
byte[] postData = urlParameters.getBytes(StandardCharsets.UTF_8);
try {
URL url = new URL(server_uri);
try {
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setDoOutput(true);
conn.setDoInput(true);
conn.setRequestMethod("POST");
conn.setRequestProperty("X-latitude", "40.7439905");
conn.setRequestProperty("X-longitude", "-74.0323626");
conn.setRequestProperty("charset", "utf-8");
conn.setRequestProperty("Content-Length", Integer.toString(postData.length));
conn.setUseCaches(false);
int responseCode = conn.getResponseCode();
Log.d("responseCode", responseCode + "");
//send register request
OutputStream wr = conn.getOutputStream();
wr.write(postData);
wr.flush();
wr.close();
//get response
.........
Log.d("registration_id", registerResponse.registration_id+"");
} catch (IOException e) {
e.printStackTrace();
}
} catch (MalformedURLException e) {
e.printStackTrace();
}
然而,logcat的說: content-length promised 54 bytes, but received 0
。 這意味着參數未成功發佈。 而在我的服務器上,它也顯示: username=null, uuid=null
在此先感謝。
我會推薦使用Volley。如果你想我可以給你幫助。 –
因此,您在發佈數據之前請求回覆代碼!? – greenapps
@MishoZhghenti是的,我明白這一點! – sydridgm