从我阅读和观看的所有内容来看,从 WCF 数据服务公开 JSON 应该与添加 JSONPSupportBehavior
一样简单。属性到服务类。
问题是 VS2010 无法识别 JSONPSupportBehavior
属性。
有没有我缺少的引用?从所有文章来看,它似乎都是开箱即用的。
最佳答案
WCF 数据服务支持 JSON 开箱即用,无需添加属性或任何东西。
为了接收 JSON 格式的响应,客户端使用标准的 HTTP 内容类型协商。
具体来说,他们需要包括 application/json
在 accept
请求的头部。
OData protocol documentation的这部分有例子.
这些示例显示了原始 HTTP 请求。不同的客户端 HTTP API 有不同的机制来指定请求 header 。JSONPSupportBehavior
属性是一个扩展示例,除了内容类型协商外,它允许客户端使用 URL 查询字符串选项(即 $format=json
),并且还增加了对“JSONP”的支持(即 $callback=[function-name]
)。
这些在您不控制 header 的情况下很有用,例如通过脚本标签进行跨域访问时。
如果您想使用 JSONPSupportBehavior
你可以在这里获得它:
http://code.msdn.microsoft.com/DataServicesJSONP
关于.net - 无法让 JSONP 与 WCF 数据服务一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2983078/