我正在编写一个 Android 应用程序,它在服务器上使用基于 REST 的 API。到目前为止,使用 HttpGet 登录工作正常=我发送凭据,它向我发送回包含 session ID 或失败的 JSON 响应对象。然后我开始使用另一个 get api(这个 API 传递了 sessionid),我得到的响应看起来像一个有效的“200 - Ok”,但响应正文不包含任何内容 - 0 文本。
如果我采用相同的 URL 并将其放入浏览器中,我会得到我期望在浏览器窗口中显示的所有 JSON 文本。那么浏览器请求/响应和 HttpGet 有什么区别呢?关于为什么我的 HttpGet 可能返回“有效”的任何线索?
最佳答案
我也遇到了同样的问题。设置用户代理解决了我的问题:
HttpParams params = new BasicHttpParams();
...
params.setParameter(CoreProtocolPNames.USER_AGENT, "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/534.24 (KHTML, like Gecko) Chrome/11.0.696.71");
关于java - 为什么我从浏览器获得了正确的 URL 响应,但 Android 的 "HttpGet"中却是空的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3520197/