大家知道,在.NET中可以进行WCF调用的操作。但是.NET之外的程序在开发的时候可以实现WCF调用吗?在这里就为大加介绍几种.NET程序之外的实现方式。#t#
下面以jQuery的AJAX调用为例,并说说WCF调用时需要注意的
- < script type="text/javascript">
- $("#execute").bind("click",
function() { - $.ajax({
- url: "http://localhost:XXXX
/Calculator.svc/Subtract", - data: "x=1&y=2",
- //data:'{"x":10,"y":200}',
//FOR type:"post" - type: "get",
- dataType:"json",
- contentType: "application/json",
- success: function(result) {
- alert(result.d);
- }
- });
- });
- < /script>
这里可以没有dataType,但不能没有contentType,因为不加contentType,会报错,而还要加dataType:"json"的原因是使返回的结果为json格式,不加的话是字符串。
使用get方式,data的数据格式和平时一样;而post方式,data默认是JSON格式。
(PS:{"x":10,"y":200},x与y引号是必须的,这点和调用web服务有点不同)
WCF调用设置需要注意的地方:
一:在.svc文件加上Factory="System.ServiceModel.Activation.WebScriptServiceHostFactory" 属性,不加会报错,至于为什么,这句是什么意思,目前我不懂,呵呵,接下来继续学。
二:web.config的设置,
- < endpoint
- address=""
- binding="webHttpBinding"
- contract="WcfService.
ICalculator"/>
注意binding的值,是"webHttpBinding",我添加服务时,它是"wsHttpBinding"
以上就是WCF调用的相关技巧介绍。