我正在向服务器发送GET方法但接收POST方法

时间:2017-11-15 00:33:26

标签: java android http httpurlconnection

我正在向服务器发送GET命令,但是在Apache日志中我得到了POST方法。

URL url = new URL("http://192.168.0.111/shakil/shakil.php/?data=shakil,123,123,123");
JSONObject postDataParams = new JSONObject();
postDataParams.put("name", "nazmul");
postDataParams.put("email", "hossainnazmul93@gmail.com");
Log.e("params",postDataParams.toString());
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setReadTimeout(3000 /* milliseconds */);
conn.setConnectTimeout(3000 /* milliseconds */);
conn.setRequestMethod("GET");
conn.setDoInput(true);
conn.setDoOutput(true);
OutputStream os = conn.getOutputStream();
BufferedWriter writer = new BufferedWriter(
new OutputStreamWriter(os, "UTF-8"));
writer.write(getPostDataString(postDataParams));
writer.flush();
writer.close();
os.close();

enter image description here

虽然方法是GET。任何人都可以告诉我这是什么问题?

2 个答案:

答案 0 :(得分:1)

评论此行:

conn.setDoOutput(true); 

答案 1 :(得分:1)

  

我正在发送GET方法

不,你不是。这一行:

conn.setDoOutput(true);

将请求方法设置为POST。您还正在执行某些输出,这也与GET请求不匹配。如果需要GET,请删除上面的行和输出的行。您可能应该将编码的参数发送到URL中。

相关问题