zoukankan      html  css  js  c++  java
  • C# WebClient、 jsonp实现跨域

    WebClient

    无传输数据获取

    1             Uri uri = new Uri(allURL);
    2             WebClient wc = new WebClient();
    3             wc.Encoding = System.Text.Encoding.UTF8;
    4             var str = wc.DownloadString(uri.ToString());    

    有传输数据获取

     1        var valuesout = new NameValueCollection();// 所加参数
     2             valuesout["data"] = data;
     3             valuesout["_aop_signature"] = _aop_signature;
     4 
     5             byte[] response;
     6             using (var client1 = new WebClient())
     7             {
     8                 response = client1.UploadValues("路径", valuesout);
     9             }
    10 
    11             string str = System.Text.Encoding.UTF8.GetString(response);//解码  

    WebRequest

      /// <summary>
            /// 发送HTTP请求
            /// </summary>
            /// <param name="url">请求的URL</param>
            /// <param name="param">请求的参数</param>
            /// <returns>请求结果</returns>
            public static string request(string url, string param)
            {
                string strURL = url + '?' + param;
                System.Net.HttpWebRequest request;
                request = (System.Net.HttpWebRequest)WebRequest.Create(strURL);
                request.Method = "GET";
                // 添加header
                request.Headers.Add("apikey", "您自己的apikey");
                System.Net.HttpWebResponse response;
                response = (System.Net.HttpWebResponse)request.GetResponse();
                System.IO.Stream s;
                s = response.GetResponseStream();
                string StrDate = "";
                string strValue = "";
                StreamReader Reader = new StreamReader(s, Encoding.UTF8);
                while ((StrDate = Reader.ReadLine()) != null)
                {
                    strValue += StrDate + "
    ";
                }
                return strValue;
            }


    jQuery ajax jsonp

     1                 $.ajax({
     2                     type: "get",
     3                     async: false,
     4                     //contentType: "application/json; charset=utf-8",
     5                     url: "http://bulabula.top/json.js",
     6                     dataType: "jsonp", //数据类型为jsonp  
     7                     jsonp:"callback",
     8                     jsonpCallback:"callBackFun", //服务端用于接收callback调用的function名的参数
     9                     success: function(data) {
    10                         console.log(data);
    11                     },
    12                     error: function(a,b,c) {
    13                         console.log(a);console.log(b);
    14                         console.log(c);
    15                     }
    16                 });            
  • 相关阅读:
    当函数中传递的参数数量不定时,获取传递给函数的参数信息
    redis分页摘抄
    redis分页
    返回数组中指定的一列,将键值作为元素键名array_column
    PHP操作Redis常用技巧总结
    php面试中的经典问题
    php 依赖注入的实现
    10分钟快速理解依赖注入
    PHP 依赖注入,依赖反转 (IOC-DI)
    PHP控制反转(IOC)和依赖注入(DI)
  • 原文地址:https://www.cnblogs.com/gaozejie/p/5057583.html
Copyright © 2011-2022 走看看