2

我正在使用 Fiddler 编写对我的 Web API 服务的调用。呼叫正在通过,我正在控制器中对其进行调试。然而,Request.Content.Headers.ContentTypenull. 但是,当我检查对象时,我可以看到Content-Type: application/xml;如下所示:

?Request.Content.Headers
{Content-Length: 40039
Content-Type: application/xml;
}
    base {System.Net.Http.Headers.HttpHeaders}: {Content-Length: 40039
Content-Type: application/xml;
}
    Allow: {}
    ContentDisposition: null
    ContentEncoding: {}
    ContentLanguage: {}
    ContentLength: 40039
    ContentLocation: null
    ContentMD5: null
    ContentRange: null
    ContentType: null
    Expires: null
    LastModified: null

我需要做什么才能检查该ContentType值并填充它?

编辑:这是我的 Post 方法的方法签名:

public HttpResponseMessage Post(MyMethodDTO message)

MyMethodDTO只是一个简单的 DTO 类,其中的 getter/setter 都是字符串

4

1 回答 1

3

内容类型中的尾随分号无效。尝试发送:

Content-Type: application/xml

反而。

HTTP 规范将媒体类型定义为:

media-type     = type "/" subtype *( ";" parameter )

所以在媒体类型参数之前应该只有一个分号

于 2013-03-05T22:59:43.227 回答