使用jQuery调用WCF服务

时间:2014-03-05 03:31:33

标签: jquery ajax wcf

试图找出为什么我不能使用jQuery与我的WCF服务交谈,我创建了一个名为Hello的无参数方法,它返回一个字符串“hi”。

WinForms测试客户端成功调用它,这是Fiddler捕获的请求:

POST http://wone.zapto.org/FX2/FxService.svc HTTP/1.1
Content-Type: text/xml; charset=utf-8
VsDebuggerCausalityData: uIDPowVZ+FU0+uNPsqYRI526N4sAAAAA8cdbBjT1DEK5yC+TNqcV7MkOd0n0tatAltu9uJjPIqUACQAA
SOAPAction: "http://tempuri.org/IFxService/Hello"
Host: wone.zapto.org
Content-Length: 130
Expect: 100-continue
Accept-Encoding: gzip, deflate

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"><s:Body><Hello xmlns="http://tempuri.org/"/></s:Body></s:Envelope>

这是XML,而不是JSON。响应也是XML并包含期望值“hi”。

这是服务接口方法声明:

[OperationContract]
[WebInvoke(Method = "GET", ResponseFormat = WebMessageFormat.Json)]
string Hello();

继续我的结果显然如何使该方法与jQuery ajax调用兼容。

如何执行以下操作之一?

  1. 将服务配置为与jQuery兼容
  2. 让jQuery拨打一个与目前服务兼容的电话吗?
  3. 我知道这可以做到;我们在上一份工作中做到了,但不幸的是我不能再简单地检查代码了。


    我的WCF书说它应该是

    [OperationContract, WebGet]
    string Hello();
    

    但是在重新编译和重新部署并重新测试之后没有任何变化,它仍然是XML。

0 个答案:

没有答案