我正在尝试从 $.ajax 查询将一些 JSON 发布到我的 WCF 服务。这是我的一组参数:
$.ajax(
{
type: "POST",
url: theurl,
data: '{name:"Gabriel"}',
dataType: "json",
async:false,
timeout: 5000,
//success and error callbacks here...
WCF 方法契约如下所示:
[OperationContract]
[WebInvoke(Method = "*",
RequestFormat = WebMessageFormat.Json,
BodyStyle = WebMessageBodyStyle.Bare,
UriTemplate = "/Sample/POST")]
string postSample(Stream jsondata);
WCF 在远程服务器上运行(在那里启用了跨域功能和 Access-Control-Allow-Origin)。当我使用 w3wp.exe 进行调试时,我看到 WCF 方法被命中,POST 正文是正确的,但是,在服务方法返回后,(一个简单的 JSON 或空字符串),我得到一个
[Exception... "Failure"...> :: line 4" data: no]
在火狐上。Safari 和 Chrome 抛出:
Error: NETWORK_ERR: XMLHttpRequest Exception 101
我正在使用 VS2010 和 jQuery 1.7.xx
知道我做错了什么吗?任何建议将不胜感激。