我正在使用HttpListener为我的连接服务实现一个简单的HTTP协议。当我连接到它的浏览器时,它可以正常工作,但是如果我使用Android的DefaultHttpClient,我会得到一个"400坏请求“。
C#代码:
httpListener = new HttpListener();
httpListener.Prefixes.Add(String.Format("http://*:{0}/", port));
httpListener.Start();Java代码:
HttpPost post = new HttpPost(path);
HttpClient client = new DefaultHttpClient();
HttpHost httphost = new HttpHost(host, port);
StringEntity body = new StringEntity("Stuff I post", "UTF-8");
body.setContentType("text/xml");
post.setEntity(body);
response = client.execute(httphost, post);
StatusLine status = response.getStatusLine();哪里都找不到到底出了什么问题,我只得到了"400坏要求“。当我通过听一个简单的端口来查看帖子时,我所看到的看起来没问题。
令人沮丧的是它几天前起作用了。
发布于 2013-11-19 11:15:28
结果,我必须从/开始我的道路。
发布于 2013-11-19 11:10:24
服务器似乎期望XML (从“text / XML”判断),并且您正在发送纯文本,因此服务器上的应用程序正在抱怨"400不好的请求“,即它无法解析XML。尝试以服务器所期望的格式发送XML,甚至更好地尝试发送上述请求到测试页面,就像一些简单的带有<?php var_dump($_POST);的PHP。如果测试页面返回200 OK,那么请求将按预期工作,您将不得不按照服务器所期望的XML格式工作。
https://stackoverflow.com/questions/20069349
复制相似问题