如何将WCF REST同时接受XML和JSON作为Request?

时间:2014-05-15 20:06:13

标签: asp.net json wcf service wcf-rest

我创建了WCF REST服务,它接受RequestFormat为 JSON BodyStyle = Wrapped 。如果消费者( .NET,JAVA,PHP,JAVASCRIPT等, )推断 复杂 (类对象)数据。我在web.config中启用了属性(automaticFormatSelectionEnabled)为true。我的问题如下:

  1. 我们可以制作一个REST服务来接受XML或JSON /两种格式作为Request吗?
  2. BodyStyle在接受这两种格式方面有所不同吗?
  3. 我们如何将复杂对象发送到JSON或XML /两种格式的POST合约?
  4. 创建可供所有平台使用的REST服务时需要采取的预防措施是什么?

1 个答案:

答案 0 :(得分:0)

假设您的控制器操作具有相同的签名,您可以将JSON设为GET,XML为POST

[HttpPost]
public ActionResult Test(string xml)
{
  ...
}

[HttpGet]
public ActionResult Test(string json)
{
  ...
}

至于POST,您可能需要专门的POST for XML或JSON