我试图对wcf服务进行跨域jQuery ajax调用。我尝试了一个没有参数并返回数据的服务。它工作正常。但是,当我尝试使用参数调用wcf服务时,会导致以下错误:
The incoming message has an unexpected message format 'Raw'. The expected message formats for the operation are 'Xml', 'Json'
这是服务代码:
public string GetData(int value)
{
return string.Format("You entered: {0}", value);
}
这是操作合同:
[OperationContract]
[WebInvoke(Method = "POST", RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.WrappedRequest)]
string GetData(int value);
这是jQuery AJAX调用:
$.ajax({
url: 'http://10.1.2.167:99/Service1.svc/GetData',
data: JSON.stringify({ "value": 1 }),
type: 'POST',
success: function (response) {
console.log(response);
},
error: function (error) {
console.log(error);
}
});
任何人都可以指出可能出错的地方......