JS-JQuery(JSONP)调用WebService跨域若干技术点
2020-12-13 03:57
标签:style blog c java tar ext 1、JSONP:JSON With
Padding,让网页从别的网域获取信息,也就是跨域获取信息,可以当做是一种“工具”,大多数架构Jquery、EXTjs等都支持。 由于同源策略,一般来说位于 server1.example.com 的网页无法与不是 server1.example.com的服务器沟通,而 HTML
的 2、WebService,这里使用VS2010自带,不使用WCF。
说明:jsoncallback是针对前台网页的函数声明,不要问web服务方法为什么这个样写,目的是为了跨域调用需要;此方法发布到IIS后直接调用是执行不了,会出现【HttpContext.Current.Request.Params["jsoncallback"].ToString()】这句代码出错返回NullReferenceException。 [WebMethod] public
void GetSingleInfo(string x, string y)
{
HttpContext.Current.Response.ContentType =
"application/json;charset=utf-8";
string jsonCallBackFunName =
HttpContext.Current.Request.Params["jsoncallback"].ToString(); //上面代码必须 //中间代码执行自己的业务操作,可返回自己的任意信息(多数据类型)
GetAttrData gad = new GetAttrData();
string result = gad.GetSingleInfo(x, y); //下面代码必须
HttpContext.Current.Response.Write(string.Format("{0}({1})",
jsonCallBackFunName, result));
HttpContext.Current.Response.End();
} 3、WebService的Web.config配置,是服务端,和Web服务一起。
Protocols声明网页Get/Post方式,务必要增加这个节点,在system.web节点内。
4、客户端网页(aspx,asp,jsp,html)跨域调用——Jquery为例
JQ.ajax({
type: "get",
url:
"http://10.0.0.29/TheDimDataService/GetDataString.asmx/GetSingleInfo?jsoncallback=?",
dataType: "jsonp",
jsonp: "jsoncallback",
data: {x:xv,y:yv}, //传输的数据
success: function (result){}, //得到调用服务结果
error:OnError
}); 参考 [1] JSONP之百度百科 另WCF Ajax、Jquery跨域访问点开见此。 JS-JQuery(JSONP)调用WebService跨域若干技术点,搜素材,soscw.com JS-JQuery(JSONP)调用WebService跨域若干技术点 标签:style blog c java tar ext 原文地址:http://www.cnblogs.com/ajg016/p/3730145.html
文章标题:JS-JQuery(JSONP)调用WebService跨域若干技术点
文章链接:http://soscw.com/essay/28626.html