【发布时间】:2012-04-14 21:51:13
【问题描述】:
正如我从 ASP.net MVC 4 发行说明中了解到的那样,它具有 Content Negotiation,并且它将返回 客户端请求的内容类型
客户如何要求特定内容?
(在我的情况下是使用 AMF 请求 XML)
【问题讨论】:
标签: c# asp.net-web-api content-type
正如我从 ASP.net MVC 4 发行说明中了解到的那样,它具有 Content Negotiation,并且它将返回 客户端请求的内容类型
客户如何要求特定内容?
(在我的情况下是使用 AMF 请求 XML)
【问题讨论】:
标签: c# asp.net-web-api content-type
设置“内容类型:”标题。例如Content-Type:application/xml 向服务请求 xml。
【讨论】:
就像 vansimke 说的,你只需设置你需要的内容类型。
在 ActionScript 客户端中,应该很简单:
request.setHeader("Accept", "application/xml");
服务器随后以“Content-Type”标头进行响应。
response.setHeader("Content-Type", "application/xml");
希望有帮助!
编辑:标题错误。
【讨论】:
这只是猜测,但我认为 Accept 标题应该可以解决问题
Accept request-header 字段可用于指定某些媒体 响应可接受的类型。接受标头可以是 用于表示请求被特别限制为一个小的 一组所需的类型,如对内联请求的情况 图片。
Accept 和 Content-Type 的主要区别在于 Accept 标头指定 响应中预期的类型,而 Content-Type 指定 响应的实际类型。因此,在请求时,您应该使用 Accept。
【讨论】:
默认情况下 web api 使用 json,儿子你不需要做任何特别的事情来接收 json。您会在 chrome 中看到 xml,因为浏览器会将响应转换为 xml。您需要使用 Fiddler 来查看您的 Web api 服务的确切响应。 Web api 为您提供了两种接收数据的方式,json 和 xml,并且可以在响应标头中进行更改。使用以下,
使用其中一个
Content-Type: application/json (for json)
或
Content-Type: application/xml (for xml)
在 Fiddler 中,转到作曲家并在响应标头中写入其中一个并进行一些测试。
【讨论】: