首页 >

jQuery+ajax调用WCF服务步骤详解

web前端|js教程jQuery+ajax调用WCF服务步骤详解
jQuery+ajax,详解,步骤
web前端-js教程关于AJAX调用WCF服务分为跨域和不跨域两种方式,今天咱们先介绍下不跨域下的调用方法。DEMO是在VS2008写的.
.net的商城源码,ubuntu目录设置教程,爬虫 可以访问缓存,oss运行 php,学橙seolzw
经过测试与研究,发现AJAX调用WCF服务必须满足以下条件
神经猫html5 源码,vscode停止项目,ubuntu ui系统,tomcat图标来由,sqlite数据浏览,二级域名服务器,不用登陆的评论插件,前端框架指的是什么,python爬虫超时,php培训有哪些机构,seo手机关键字排名网址,html网站导航模板,wap网页微信分享,html5空白模板,手机网页页面滚动,织梦的模板管理系统,多线程投递单独子程序lzw
1.wcf的通讯方式必须使用webHttpBinding
2.必须设置节点的值
3.服务的实现必须添加标记
下载器源码,jdk解压安装ubuntu,爬虫token动态变化,php unsert,金融seo论文lzw
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]

4.方法前面必须添加如下标记

[WebInvoke(Method = "POST", BodyStyle = WebMessageBodyStyle.Bare, ResponseFormat = WebMessageFormat.Json)]

5.ajax方法中传递的参数名称必须和wcf服务中提供的参数方法名称一致

以下是本人写的代码,标记颜色的是需要注意的地方

服务器端配置文件代码

                                                                                                                         

服务器端代码

[ServiceContract]  public interface IService1  {   [OperationContract]   string GetData(int value);   [OperationContract]   City GetDataUsingDataContract(City composite);    [OperationContract]   List GetList();    [OperationContract]   List GetListData(List list);  }  // 使用下面示例中说明的数据约定将复合类型添加到服务操作。  [DataContract]  public class City  {   int seq = 0;   string cityID;   string ctiyName;    [DataMember]   public string CityID   {    get    {     return cityID;    }    set    {     cityID=value;    }   }   [DataMember]   public string CityName   {    get { return ctiyName; }    set { ctiyName = value; }   }   [DataMember]   public int Seq   {    get    { return seq; }    set    { seq = value; }   } }

实现代码

[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]  public class Service1 : IService1  {   [WebInvoke(Method = "POST", BodyStyle = WebMessageBodyStyle.WrappedRequest, RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json)]   public string GetData(int value)   {    return string.Format("You entered: {0}", value);   }   #region IService1 成员   [WebInvoke(Method = "POST", BodyStyle = WebMessageBodyStyle.Bare, ResponseFormat = WebMessageFormat.Json)]   public City GetDataUsingDataContract(City composite)   {    City c = new City();    c.CityID = composite.CityID;    c.CityName = composite.CityName;    c.Seq = composite.Seq;    return c;   }   [WebInvoke(Method = "POST", BodyStyle = WebMessageBodyStyle.Bare, ResponseFormat = WebMessageFormat.Json)]   public List GetList()   {    List list = new List();    City cc = new City();    cc.CityID = "1";    cc.CityName="北京";    cc.Seq = 3;    list.Add(cc);    City cc1 = new City();    cc1.CityID = "2";    cc1.CityName = "上海";    cc1.Seq = 4;    list.Add(cc1);    return list;   }   [WebInvoke(Method = "POST", BodyStyle = WebMessageBodyStyle.Bare, ResponseFormat = WebMessageFormat.Json)]   public List GetListData(List list)   {    return list;   }   #endregion }

客户端调用代码

           //参数为整数的方法   function fn1()   {    $.ajax({    url: "http://localhost:12079/Service1.svc/GetData",     type: "POST",     contentType: "text/json",     data: '{"value":2}',     dataType: "json",     success: function(returnValue) {      alert(returnValue);     },     error: function() {      alert('error');     }    });   } //参数为实体类的方法   function fn2() {    $.ajax({    url: "http://localhost:12079/Service1.svc/GetDataUsingDataContract",     type: "POST",     contentType: "application/json",     data: '{"CityID":1,"CityName":"北京","Seq":"3"}',     dataType: "json",     success: function(returnValue) {     alert(returnValue.CityID + ' ' + returnValue.CityName + "--" + returnValue.Seq);     },     error: function() {      alert('error');     }    });   } //返回值为类集合的方法   function fn3() {    $.ajax({     url: "http://localhost:12079/Service1.svc/GetList",     type: "POST",     contentType: "application/json",     dataType: "json",     success: function(returnValue) {     for (var i = 0; i < returnValue.length; i++) {      alert(returnValue[i].CityID + ' ' + returnValue[i].CityName+'---'+returnValue[i].Seq);      }     },     error: function() {      alert('error');     }    });   }   function fn4() {    $.ajax({    url: "http://localhost:12079/Service1.svc/GetListData",     type: "POST",     contentType: "application/json",     data: '[{"CityID":1,"CityName":"北京","Seq":"3"},{"CityID":3,"CityName":"上海","Seq":"3"}]',     dataType: "json",     success: function(returnValue) {     for (var i = 0; i < returnValue.length; i++) {      alert(returnValue[i].CityID + ' ' + returnValue[i].CityName + '---' + returnValue[i].Seq);     }     },     error: function() {      alert('error');     }    });   }        




jQuery+ajax调用WCF服务步骤详解
  • jQuery+ajax怎么样实现动态数据分页
  • jQuery+ajax怎么样实现动态数据分页 | jQuery+ajax怎么样实现动态数据分页 ...

    jQuery+ajax调用WCF服务步骤详解
  • jquery+ajax请求数据不刷新怎么处理
  • jquery+ajax请求数据不刷新怎么处理 | jquery+ajax请求数据不刷新怎么处理 ...

    jQuery+ajax调用WCF服务步骤详解
  • jQuery+ajax功能实现
  • jQuery+ajax功能实现 | jQuery+ajax功能实现 ...