zoukankan      html  css  js  c++  java
  • jsonp

    一、JavaScript

    远程web     Target.ashx

    public class Target : IHttpHandler {
        
        public void ProcessRequest (HttpContext context) {
            string funName = context.Request.Params["callbackFun"];
    
            string strData = funName + "({"name":"james","age":"18"});";
            context.Response.Write(strData);
        }
     
        public bool IsReusable {
            get {
                return false;
            }
        }
    }

    本地调用代码:

         
      <script>
    function fun(data) {
    for (var key in data) { alert(data[key]); } } </script> <!--Script标签可以跨域访问--> <script type="text/javascript" src="http://www.oumind.com/C01Target.ashx?callbackFun=fun"></script>


    二、Jquery

    <!DOCTYPE html>
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
        <title></title>
        <script type="text/javascript" src="js/jquery-1.9.0.min.js"></script>
        <script type="text/javascript">
    
            var requestUrl = "http://www.oumind.com/C01Target.ashx";
    
            window.onload = function () {
                document.getElementById("btnJQ").onclick = doJq;
            }
            function doJq()
            {
                //使用 jq 发送跨域请求
                $.ajax(requestUrl, {
                    type:"get",
                    dataType: "jsonp",// 指定 jq 发送 jsonp 请求(内部,就是动态创建一个 script 标签)
                    jsonp: "callbackFun",// 指定 传递 函数名的 参数的名字 如: url?callbackFun = fun
                    jsonpCallback: "fun",// 指定 回调 的 函数名
                    success: function () {
                        alert("123123");
                    }
                });
            }
            function fun(data)
            {
                for (var key in data)
                {
                    alert(data[key]);
                }
            }
        </script>
    </head>
    <body>
        <input type="button" id="btnJQ" value="使用Jquery 跨域请求 - 内部其实就是动态创建 <script>标签发送 跨域请求" />
    </body>
    </html>

    三、如果读取的远程数据仅在一个区域显示,可以在远程文件以document.write方式直接输出到引用位置。

  • 相关阅读:
    supper 关键字
    self 关键字
    Setter/Getter方法
    0013.HBase进阶
    0012.HBase基础
    0011.MapReduce编程案例2
    0010.MapReduce编程案例1
    0009.Mapreduce的高级功能
    0008.MapReduce基础
    0007.HDFS上传与下载的原理
  • 原文地址:https://www.cnblogs.com/dotnetmvc/p/3670808.html
Copyright © 2011-2022 走看看