加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – 使用AJAX进行WCF调用

发布时间:2020-12-15 19:56:44 所属栏目:asp.Net 来源:网络整理
导读:是否需要使用RESTful 服务能够制作ajax 调用wcf服务(例如:通过使用 “操作”上的WebInvoke属性 合同) 通过在服务主机上添加webHttp绑定使服务成为RESTful,主机是否也可以拥有其他端点? (wsHttp或netTcp) 对于具有webHttp绑定的服务,是否需要将aspNetCompat
>是否需要使用RESTful
服务能够制作ajax
调用wcf服务(例如:通过使用
“操作”上的WebInvoke属性
合同)
>通过在服务主机上添加webHttp绑定使服务成为RESTful,主机是否也可以拥有其他端点? (wsHttp或netTcp)
>对于具有webHttp绑定的服务,是否需要将aspNetCompatibilityEnabled设置为true(并且此设置可以与其他端点共存)
>我知道我可以使用 JQuery和ScriptManager在客户端上进行WCF调用.我为什么要使用一个而不是另一个?

解决方法

答案

>不.
AJAX通常用于发送简单的HTTP GET(“REST”)请求.它不一定是这样.您还可以使用SOAP信封格式化有效内容,并将其POST到端点.在这种情况下,WCF服务至少必须是wsHttp或basicHttpBinding.这是an example of using VBScript to create and send a SOAP request,但你可以在Javascript中做同样的事情.您不能使用更高级的SOAP扩展,如WS-Security,XML DigSig等.嗯,你可以,但这是不切实际的.例如,我不知道Javascript中的任何XML规范化库,这对于执行WS-Security或数字签名至关重要.有17个类似的障碍.结果:从Javascript调用时,您无法使用更高级的SOAP扩展.
.
如果使用jQuery ajax,则需要在ajax请求上使用beforeSend回调来设置SOAPAction头.
.
话虽如此,在Javascript程序中处理json比处理XML文档的DOM要容易得多.换句话说,在从Javascript连接到WCF而不是SOAP时,最好使用JSON / REST.我想有时它不是一种选择.
>是的
WCF服务可以有多个端点,它们可以侦听相同或不同的传输,例如HTTP,net.tcp,net.pipe或net.msmq.
>否.aspNetCompatibilityEnabled只是在服务器上启用了一些类似ASMX的功能.它会影响服务的设计方式,并且与邮件签名无关.它确实排除了使用非HTTP协议.有关详细信息,请参阅Wenlong Dong’s article.>至于在客户端使用哪个框架 – 哪个更容易?我没有使用ScriptManager的经验,但决策标准非常简单. jQuery工作正常,如果你已经使用jQuery,它是合适的.如果您没有或不想要jQuery,可以使用XmlHttpRequest发送SOAP或REST请求.如果这些不合适,请使用其他东西.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读