【发布时间】:2014-05-06 02:58:53
【问题描述】:
我有一个服务器方法,它接受并编码字符串列表,因为 IE9 不读取 json 格式,我想要的是在 http 响应消息的内容中设置字符串。我似乎做得很好,但是当我得到响应时,我可以在正文上找到响应,我只能看到我在响应消息中设置的长度。
代码如下:
public HttpResponseMessage Upload()
{
HttpResponseMessage m = new HttpResponseMessage(HttpStatusCode.OK);
List<string> returnlist = new List<string>();
for (int i = 0; i < Request.Files.Count; i++)
{
//string treatment
}
HttpResponseMessage response = new HttpResponseMessage();
response.Content = new StringContent(string.Join(",", returnlist));
return response;
}
这就是字符串包含的内容“file1,file2,file3” 但我在visual studio或firebug中找不到它调试
我得到的回应是:
StatusCode: 200, ReasonPhrase: 'OK', Version: 1.1, Content: System.Net.Http.StringContent, Headers:
{
Content-Type: text/plain; charset=utf-8
}
如何设置并获取响应消息?
如果需要这里的js是它:
self.uploadfiles = function () {
//startSpinner();
if (!self.isOldIE()) {
var loc = window.location;
base_url = loc.protocol + "//" + loc.host;
baseUrl = base_url + "/";
var save = true;
var xhr = new XMLHttpRequest();
xhr.open('POST', baseUrl + 'Home/Upload');
xhr.send(formdata);
xhr.onreadystatechange = function (data) {
//The responseText is the same as above
if (xhr.responseText.length > 0) {
//do stuff
}
};
【问题讨论】:
-
状态说明了一切...错误 404:您请求的页面不存在...您在上面显示的代码可能永远不会命中...
-
那是因为我像 json 一样处理 js ajax 中的响应,所以我编辑了问题。
标签: c# .net web-services http asp.net-web-api