我遇到POST请求以及在模拟器上运行时遇到问题。
设备问题: 发送POST请求时,我收到411错误(需要Content-Length)。添加该请求属性没有帮助。
模拟器问题: 当键入REST URL到Web客户端时,它可以工作。但是当使用应用程序客户端运行它时,我得到了UnkownHostExpection。
到目前为止,我无法解决我的问题,所以我希望你能指出一些解决这些问题的技巧。
感谢。
以下是相关代码:
URL url = new URL("http://etc..");
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.addRequestProperty("Accept", "application/json");
conn.addRequestProperty("Content-Type", "application/json");
conn.setRequestProperty("Accept-Charset", CHARSET_UTF8);
conn.setRequestMethod("POST");
conn.setDoOutput(true);
conn.setChunkedStreamingMode(0);
conn.getOutputStream().write(myPostParams.getBytes(CHARSET_UTF8));
conn.connect();
答案 0 :(得分:1)
您是否尝试过设置使用setFixedLengthStreamingMode()而不是setChunkedStreamingMode(0)?
答案 1 :(得分:0)
这个“ setFixedLengthStreamingMode()
”对我有用