您好我必须向网址发送获取请求 http://onemoredemo.appspot.com/group?authToken=access_token&authMethod=oauth
请求正文包含json对象,如下所示。
{"goupid":"some_variable"
}
以下是发送get请求的java代码部分:
URL url1=new URL("http://onemoredemo.appspot.com/group?authToken="+access_token+"&authMethod=oauth");
conn=(HttpURLConnection) url1.openConnection();
conn.addRequestProperty("Content-type", "application/x-www-form-urlencoded");
conn.setRequestMethod("GET");
conn.setDoOutput(true);
JSONObject jj=new JSONObject();
HttpGet get;
get.
jj.put("groupid", "testing@iritesh.com");
conn.addRequestProperty("Content-TYpe", "application/json");
conn.getOutputStream().write(jj.toString().getBytes());
conn.connect();
InputStream is=conn.getInputStream();
我收到错误java.io.FileNotFoundException
。
我从mozilla浏览器向网址发送了一个请求
http://onemoredemo.appspot.com/group?authToken=ya29.AHES6ZRDl-RqiA8W0PhybU_hMluHrHRjlJBvq06Vze0izJq0Ovjc088&authMethod=oauth
它给了我正确的答案,但现在它超过一个小时,所以acccesstoken到期。我知道在get请求中发送参数以及requestbody但我必须发送它很奇怪。
请帮助我们在get请求中如何在请求体中发送json对象。
答案 0 :(得分:16)
不要这样做。
阅读本文: http://tech.groups.yahoo.com/group/rest-discuss/message/9962
“是的。换句话说,任何HTTP请求消息都允许包含 消息体,因此必须解析消息。服务器 然而,GET的语义受到限制,以至于身体(如果有的话), 对请求没有语义含义。解析的要求 与方法语义的要求分开。
所以,是的,你可以发送一个带有GET的主体,不,它永远不会有用 这样做。
这是HTTP / 1.1的分层设计的一部分,将变得清晰 一旦规范被分区(正在进行中)。“
关于此检查的其他有趣讨论:
https://stackoverflow.com/a/978094/550967
答案 1 :(得分:2)
未读取GET请求的正文。
您是否尝试将其添加到params:
http://onemoredemo.appspot.com/group?authToken=access_token&authMethod=oauth的&安培; goupid = some_variable 强>