题记:首次发个随笔,把以前写的一个笔记发过来,劝当记录,以供查询。

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()异域调用的说明,但是在项目应用中我们还会有更加针对性的业务调用,也就是说对于某个业务调用我们会采用固定的回调来操作返回的信息,如果有机会,就下次再记吧。
本文是自己项目中的小心得,记下备个案以备日后查找。欢迎大家拍砖。呵呵!

一个getjson()方式调用实例【前后台】,适于跨域访问。的更多相关文章

  1. jQuery.getJSON跨域访问的正确使用方式(史上最傻瓜式解释)

    最近花了2天时间完整的看了一遍 jQuery 的API,其中 $.getJSON(url[, data][, callback]) 方法的跨域访问解释真心看的一头雾水,大家可以从这里感受一下: htt ...

  2. SpringBoot 实现前后端分离的跨域访问(CORS)

    序言:跨域资源共享向来都是热门的需求,使用CORS可以帮助我们快速实现跨域访问,只需在服务端进行授权即可,无需在前端添加额外设置,比传统的JSONP跨域更安全和便捷. 一.基本介绍 简单来说,CORS ...

  3. java 解决nginx代理的跨域访问问题

    一.什么是跨域 跨域是浏览器对JavaScript同源策略的限制 二.什么情况下会产生跨域 域名不同 wwww.baidu.com www.jd.com 域名相同,访问的端口不同 wwww.baidu ...

  4. 【js跨域】js实现跨域访问的几种方式

    这里说的js跨域是指通过js在不同的域之间进行数据传输或通信,比如用ajax向一个不同的域请求数据,或者通过js获取页面中不同域的框架中(iframe)的数据.只要协议.域名.端口有任何一个不同,都被 ...

  5. 解决Entity Framework查询匿名对象后的跨域访问的一种方式

    在Entity Framework中,可以使用lambda表达式进行对数据的查询,而且可以将查询结果直接映射为对象或者对象列表,这极大的提高的开发速度,并且使数据层的数据更加方便处理和传递.但是很多时 ...

  6. 跨域调用webapi web端跨域调用webapi

    web端跨域调用webapi   在做Web开发中,常常会遇到跨域的问题,到目前为止,已经有非常多的跨域解决方案. 通过自己的研究以及在网上看了一些大神的博客,写了一个Demo 首先新建一个webap ...

  7. [转载]介绍一个JSONP 跨域访问代理API-yahooapis

    你是否遇到了想利用AJAX访问一些公网API,但是你又不想建立自己的代理服务,因为有时我根本就没打算涉及服务端任何代码,但是讨厌的浏览器的同源策略,阻止了我们的ajax调用. 比如我想访问一个天气的r ...

  8. ajax实现跨域访问的两种方式

    一.使用jsonp实现跨域请求 在前端开发这中你会发现,所有带src属性的标签都可以跨域访问其他服务器文件.jsonp实现的原理也是如此. 以jsonp的数据类型进行请求时,JQ会动态在页面中添加sc ...

  9. System.Web.Http.Cors配置跨域访问的两种方式

    System.Web.Http.Cors配置跨域访问的两种方式 使用System.Web.Http.Cors配置跨域访问,众多大神已经发布了很多文章,我就不在详细描述了,作为小白我只说一下自己的使用心 ...

随机推荐

  1. NUCLE F072 Pin说明http://home.cnblogs.com/group/topic/8550.html

    LEDs LD1     1  RED on                        - PC和ST_Link通讯初始化成功     2  GREEN ON                    ...

  2. VS2010 支持 CSS3

    在安装Standards Update for VS2010 SP1后,VS2010中没有CSS3.0问题,以下是我的解决方法 1.首先去官网下载 CSS 3 Intellisense Schema ...

  3. Android DrawerLayout Plus 增强版抽屉菜单

    DrawerLayout是官方提供的侧滑菜单,相比SliddingMenu,它更加轻量级.默认情况下,DrawerLayout可以设置左侧或者右侧滑出菜单.如下,   xml布局: <!-- & ...

  4. Android实现归属地查询功能

    实现归属地查询大体有两种方法可以实现,一种是通过归属地API进行查询,另一种是查询本地数据库.两种方法各有优劣,最好结合起来使用,我本次采用的是查询数据库的方法.首先需要从网上下载归属地数据库call ...

  5. IntelliJ IDEA使用(1)——IDEA配置JDK

    提前安装jdk,配置环境变量 一.配置jdk 1.依次点开File -->Project Structure,点击左侧标签页,点击SDKs 2.点击+号,选SDK 3.在弹出框选择jdk路径(我 ...

  6. html里的添加视频特效(美化,丰富内容)

    现在如果要在页面中使用video标签,需要考虑三种情况,支持Ogg Theora或者VP8(如果这玩意儿没出事的话)的(Opera.Mozilla.Chrome),支持H.264的(Safari.IE ...

  7. 【Spring】搭建最简单的Spring MVC项目

    每次需要Spring MVC的web项目测试一些东西时,都苦于手头上没有最简单的Spring MVC的web项目,现写一个. > 版本说明 首先要引入一些包,Spring的IOC.MVC包就不用 ...

  8. ATI Radeon HD 5450 with full QE/CI Support ( 转载 )

    ATI Radeon HD 5450 with full QE/CI Support - DSDT (Contains HDMI Audio Edit Too) & AGPM included ...

  9. visual studio插件开发dll类库免加全局缓存处理办法

    1.卸载VSIXProject 2.然后编辑*.csproj 修改如下: 3.重新加载项目 编辑source.extension.vsixmanifest 添加资产: 完事后,直接安装VISX就可以了

  10. [Golang] 一个简易代理池

    晚上写了一个代理池,就是在一个代理网站上爬取代理ip和端口以及测试是否可用.接下来可能考虑扩展成一个比较大的 golang实现的代理池. 简易版代码: package main import ( &q ...