一个getjson()方式调用实例【前后台】,适于跨域访问。
2011-02-26 17:42
399 查看
jquery的推出确实解决了大部分程序员都感到头痛的事情,无论是对于UI的访问和处理,还是在一系列的远程访问等方面都有了很大的改善,或者说是一种解放。以往对于远程访问,对于跨域调用,如果你还在为构建ajax所烦恼,还在为不同的浏览器不兼容而郁闷,那么jquery无疑对于大家来说是一个不小的进步,因为他能帮你解决你的烦恼,使你有更多的时间放置在对于业务逻辑的处理上。本文就是基于一个跨域访问的需求的简单实现,功能是实现本地与远程服务器的信息交换。
jquery的$.get(),$.post(),以及更为基础的$.ajax()都在对于远程信息的访问和投送上提供了便利,但是对于跨域访问往往不能很好的胜任,那么对于跨域的信息交互我们就可以通过jquery.getjson()或者是$.getjson()来实现。调用方式:
jQuery.getJSON(url, function(data) {
//
});
实例:登录,提交远程机器验证
//本例的url地址为本地地址,但是也设置为一可用的远程地址
前台:$(document).ready(function(){
$("#btnLogin").bind("click",function()
{
jQuery.getJSON("Key.aspx?name='"+$("#username").val()+"'+pwd='"+$("#passwords").val()+"'&callback=?", function(data) {
alert("服务器端返回结果为:"+data);
$("#result").text("服务器端返回结果为:"+data);
});
}
);
});
后台:
string name = Request.QueryString["name"];
string pwd= Request.QueryString["pwd"];
if (valdate(name,pwd) )
{
string fun = (Request.QueryString["callback"]);
//string fun = (Request.QueryString["theback"]); //自定义回调方法
Response.Write(fun+"('登陆成功!')");
Response.Flush();s
}
上例简单的实现了在某前台页面与异地信息交换,要注意的是在getjson()的访问中callback的参数不能漏掉,且该参数要设置为callback=?的方式,因为jquery库在调用的时候会动态的给callback赋值,大概为jsonp1298712852382,那么后台在回调的时候就可以通过调用该方法并输出到页面。上述只是简单对于getJson()异域调用的说明,但是在项目应用中我们还会有更加针对性的业务调用,也就是说对于某个业务调用我们会采用固定的回调来操作返回的信息,如果有机会,就下次再记吧。
本文是自己项目中的小心得,记下备个案以备日后查找。欢迎大家拍砖。呵呵!
jquery的$.get(),$.post(),以及更为基础的$.ajax()都在对于远程信息的访问和投送上提供了便利,但是对于跨域访问往往不能很好的胜任,那么对于跨域的信息交互我们就可以通过jquery.getjson()或者是$.getjson()来实现。调用方式:
jQuery.getJSON(url, function(data) {
//
});
实例:登录,提交远程机器验证
//本例的url地址为本地地址,但是也设置为一可用的远程地址
前台:$(document).ready(function(){
$("#btnLogin").bind("click",function()
{
jQuery.getJSON("Key.aspx?name='"+$("#username").val()+"'+pwd='"+$("#passwords").val()+"'&callback=?", function(data) {
alert("服务器端返回结果为:"+data);
$("#result").text("服务器端返回结果为:"+data);
});
}
);
});
后台:
string name = Request.QueryString["name"];
string pwd= Request.QueryString["pwd"];
if (valdate(name,pwd) )
{
string fun = (Request.QueryString["callback"]);
//string fun = (Request.QueryString["theback"]); //自定义回调方法
Response.Write(fun+"('登陆成功!')");
Response.Flush();s
}
上例简单的实现了在某前台页面与异地信息交换,要注意的是在getjson()的访问中callback的参数不能漏掉,且该参数要设置为callback=?的方式,因为jquery库在调用的时候会动态的给callback赋值,大概为jsonp1298712852382,那么后台在回调的时候就可以通过调用该方法并输出到页面。上述只是简单对于getJson()异域调用的说明,但是在项目应用中我们还会有更加针对性的业务调用,也就是说对于某个业务调用我们会采用固定的回调来操作返回的信息,如果有机会,就下次再记吧。
本文是自己项目中的小心得,记下备个案以备日后查找。欢迎大家拍砖。呵呵!
相关文章推荐
- angular Js使用get方式ajax访问后台数据 非跨域访问
- jQuery.getJSON跨域访问的正确使用方式(史上最傻瓜式解释)
- Jquery Ajax GetJson实现跨域调用
- Silverlight调用WebService时出现的跨域方式访问服务
- 具体的一个实例,展示如何访问实例变量和调用成员方法
- Jquery通过GetJSON的后台调用Json取Json数据的示例!
- 一步一个脚印学习WCF系列之WCF概要—WCF服务的创建与调用HelloWorld实例,通过编码方式(四)
- java后台设置可跨域访问,前端ajax获取json数据,解决浏览器限制跨域访问的问题
- 让web api 4.5支持Jquery.getJson(url,handle)跨域访问
- 前后台数据交互(ajax、json、ssm、跨域访问)
- Android通过GET和POST方式访问WCF服务(Json)
- java后台设计简单的json数据接口,设置可跨域访问,前端ajax获取json数据
- getJSON调用后台json数据时函数被调用两次的原因猜想
- jQuery中使用getJSON方法调用C#的后台方法
- 前后端分离,前端跨域访问后台的两种方式
- 使用jsonp跨域访问时保证json文件以ASCI方式存储
- java后台设计简单的json数据接口,设置可跨域访问,前端ajax获取json数据
- asp.net后台cs中的JSON格式变量在前台Js中调用方法!(前后台实例!)
- 使用jquery的getJSON跨域访问
- 解决$.getJSON在IE浏览器下出现数据缓存,第一次访问某个后台路径之后,再次访问该路径不再走后台的方法。