.net - 供应商特定的MIME作为传入WCF REST POST请求中的Content-Type(例如application/vnd.company + xml)

标签 .net wcf rest

我很难找到使传入的POST请求命中我的服务声明的解决方案,除非将通用的“application / xml”或“application / json”设置为请求的Content-Type:

由于我们使用的是自定义MIME类型,例如“application / vnd.company + xml”,这实际上应该是Content-Type header 的值。但是显然WCF无法从中得出请求格式。有人知道解决方案吗?

简而言之:我想要

Content-Type: application/vnd.company+xml, and
Content-Type: application/vnd.company+json

分别将传入的POST请求映射到XML和JSON,但是到目前为止,仅当我发出POST请求时,该服务才会响应
Content-Type: application/xml, or
Content-Type: application/json

平台是.NET4和WCF。

最佳答案

使用WCF Web API代替WCF REST。主要优点之一是,它使您可以灵活地使用所需的任何媒体类型。

如果您确实对.net 4中的WCF REST感到困惑,则将请求参数更改为流类型。这样您就可以发布所需的任何数据。您将需要自己进行反序列化。

关于.net - 供应商特定的MIME作为传入WCF REST POST请求中的Content-Type(例如application/vnd.company + xml),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7967741/

相关文章:

.net - 多生产者多消费者无锁(甚至无需等待)队列

c# - WCF从客户端发送int[]到服务器

rest - 部署带有依赖项的 REST API

rest - Azure 数据工厂分页规则 - QueryParameters.page

c# - 使用 IEnumerator 遍历列表

C# arraylist 搜索对象属性问题

c# - WCF 代理在调用外部 API 后失败

jquery - 不允许通过 REST api 和 jquery 405 方法创建 Jira 问题

c# - 警告 : Assembly binding logging is turned OFF

c# - 尝试 catch block 在 wcf 中不起作用