0

我有一个托管在 Amazon EC2 实例上的 MVC 3 Web 服务。我有一个 android 应用程序正在向服务发出发布请求。但是,返回 400 bad request 表示标头名称无效。我检查了服务器上的日志,请求没有进入 IIS。HTTP 错误日志只有以下条目:

2011-10-07 02:01:05 xxx.xxx.xx.xx xxxxx xx.xxx.xx.xx 80 HTTP/1.1 POST /API/UserAccount/Login 400 - 标题 -

不太确定发生了什么。我在visual studio自带的开发服务器上测试了这个web服务,没有问题。以下是在 Android 上创建发布请求的代码:

HttpPost post = new HttpPost(LOGIN_URL);
StringEntity se = new StringEntity(json);
se.setContentEncoding(new BasicHeader(HTTP.CONTENT_TYPE,
    "application/json"));
post.setEntity(se);
response = client.execute(post);

任何见解都值得赞赏。

谢谢。

4

1 回答 1

6

更改设置 Http 标头的方式。这是您的代码的更新版本:

HttpPost post = new HttpPost(LOGIN_URL);
StringEntity se = new StringEntity(json);
se.setContentEncoding("UTF-8");
se.setContentType("application/json");
post.setEntity(se);
response = client.execute(post);
于 2011-10-07T02:40:29.117 回答