【问题标题】:Server is not acknowledging httpPost header in Android app服务器未确认 Android 应用程序中的 httpPost 标头
【发布时间】:2013-06-18 18:26:58
【问题描述】:

我正在尝试制作一个使用 Web 服务的 Android 应用程序,并且我已成功使用 HttpGet。我现在正在尝试使用 HttpPost,但我没有正确执行其中一个标题。这是我的代码:

//Auth token post request
HttpPost getToken = new HttpPost(tokenURI);
getToken.addHeader("Accept", "application/json");
getToken.addHeader("Content-Type", "application/json");

//Create token JSON request
String jsonRequest = new JSONStringer().object().key("auth")....toString();         
StringEntity se = new StringEntity("JSON: " + jsonRequest);
se.setContentEncoding(new BasicHeader("Content-Type", "application/json"));
se.setContentType("application/json");
getToken.setEntity(se);

我得到的响应是这样的:“error”:“Expecting to find application/json in Content-Type header...”它告诉我请求格式不正确或不正确,因此无法处理。我很困惑,因为我明确地将标头添加到 getToken。我在这里做错了什么?让我知道是否可以添加更多细节。

【问题讨论】:

    标签: android json header http-post


    【解决方案1】:

    只是一个猜测,但是您在 getTokense 上设置了两倍的 Content-type,这正常吗? 你试过删除一个吗? 另外,我通常使用setHeader而不是addHeader,不确定它有什么不同...

    【讨论】:

    • 是的,我已经尝试过仅使用并且我已经尝试过 bot set 并为 header 添加。在我第一次尝试请求之前,我没有 getToken 标头,错误是促使我放入这些标头的原因。
    【解决方案2】:

    原来我使用的格式不是预期的格式。

    【讨论】:

      猜你喜欢
      • 2023-02-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-02-26
      • 1970-01-01
      相关资源
      最近更新 更多