MVC,WCF ASP.NET 4.0和JQUERY
我花了这么多天对WCF感到沮丧,所以我决定在这里发帖求助,因为……好吧……我不知道从哪里开始!..任何帮助都将不胜感激!
首先:在.Net 4.0中创建WCF服务时,如果我希望能够使用JQuery创建一个接受来自AJAX POST的数据的服务,我应该使用哪个模板? (如果可能的话,我希望能够拥有Global.asax). 其次:我的服务在WCF测试客户端中工作正常,但是当我设法让它接受GET请求时,测试客户端停止显示服务方法. POST方法似乎完全拒绝工作. 我想开发一个WCF服务,它将在IIS服务器上运行,我可以通过JQuery Ajax调用从我的任何一个应用程序挂钩. 如果有人有一个教程指出我是正确的方向,那将非常感激,因为我无法使用.Net 4在WCF上找到任何东西,这是有效的. 干杯 解决方法
您应该考虑的第一件事是
same origin policy限制.如果您无法遵守它并且您的Web服务未与消费AJAX脚本托管在同一个域中,您可以在此处停止阅读我的答案并重新考虑您的体系结构.
如果您还在阅读,您可以像往常一样定义服务合同和实施: [ServiceContract] public interface IFoo { [OperationContract] string GetData(int value); } public class FooService : IFoo { public string GetData(int value) { return string.Format("You entered: {0}",value); } } 然后添加一个fooservice.svc文件,该文件将在IIS中公开该服务: <%@ ServiceHost Language="C#" Debug="true" Service="SomeNs.FooService" CodeBehind="FooService.svc.cs" Factory="System.ServiceModel.Activation.WebScriptServiceHostFactory" %> 最后一行Factory =“System.ServiceModel.Activation.WebScriptServiceHostFactory”非常重要,因为这将允许您使用JSON. 最后一部分是web.config: <system.serviceModel> <behaviors> <serviceBehaviors> <behavior> <serviceMetadata httpGetEnabled="true"/> <serviceDebug includeExceptionDetailInFaults="false"/> </behavior> </serviceBehaviors> </behaviors> <serviceHostingEnvironment multipleSiteBindingsEnabled="true" /> </system.serviceModel> 最后一个HTML页面发送AJAX请求来使用该服务: <!DOCTYPE html> <html> <head> <title>WCF Test</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> <script type="text/javascript" src="http://www.json.org/json2.js"></script> <script type="text/javascript"> $(function () { $.ajax({ // Notice the URL here: Need to be hosted on the same domain url: '/fooservice.svc/getdata',type: 'post',contentType: 'application/json; charset=utf-8',data: JSON.stringify({ value: 7 }),success: function (result) { alert(result.d); } }); }); </script> </head> <body> </body> </html> (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net – 从ASPX中的URL检索GET变量
- ASP.NET MVC主页变量范围
- asp.net – Reflection构成了什么风险? (中等信任)
- asp.net-mvc – 如何将用户重定向到ASP.NET MVC中的自定义4
- asp.net – 如何在单击“赞”按钮时在新选项卡中打开Facebo
- asp.net-web-api – webapi中的attributerouting限制
- .net – 应用程序池回收时Cache会发生什么?
- 为什么IIS比ASP.NET Development Server慢?
- asp.net – 文件上传控件HasFile始终为false,name始终为Emp
- asp.net – 什么是连接池?
- asp.net-mvc – 使用ui-router的.NET MVC和Angul
- asp.net – 如何引用一个javascript文件?
- asp.net – ActiveDirectoryMembershipProvider“
- 有没有办法将一个onclick事件添加到ASP.NET标签服
- ASP.net HttpRequest上的静态HttpClient线程安全
- Linux从创建到部署ASP.NET Core项目-----使用阿里
- 两个ASP.NET站点共享应用程序文件但具有不同的we
- ASP.NET加密漏洞是否适用于大型LIE?
- asp.net-web-api – 使用多种授权方案(HMAC和OAT
- asp.net-mvc – ASP.NET MVC自定义T4模板的视图