通过C#后台实现跨域请求
因为项目中需要对第三方的站点进行跨域请求,原来常用的Jquery的Ajax方法不能够实现跨域请求。在网上查找了一下资料,解决跨域请求的方式有不少,但是还需要根据自己的具体情况来做出不同的选择。在项目中我使用的是直接通过C#后台发送请求来实现跨域访问(后台消耗会增大),下面是请求的源码:
1 string URL = "www.xxx.com"; 2 public void sendPost(string urlArgs,HttpContext context) 3 { 4 //context.Request["args"] 5 System.Net.WebClient wCient = new System.Net.WebClient(); 6 wCient.Headers.Add("Content-Type", "application/x-www-form-urlencoded"); 7 byte[] postData = System.Text.Encoding.ASCII.GetBytes("id=" + urlArgs); 8 9 byte[] responseData = wCient.UploadData(URL, "POST", postData); 10 11 string returnStr = System.Text.Encoding.UTF8.GetString(responseData);//返回接受的数据 12 13 context.Response.ContentType = "text/plain"; 14 context.Response.Write(returnStr); 15 }
除了上面的方法还有可以使用JSONP来实现,具体应用JSONP实现Json数据跨域调用,需要服务器端与客户端的合作完成。关于JSONP的具体使用方式,网上有很多相关的资料可以参考。这里就暂时做个记录,以后用到的话再具体分析。
参考资料:
【推荐】博客园的心动:当一群程序员决定开源共建一个真诚相亲平台
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】Flutter适配HarmonyOS 5知识地图,实战解析+高频避坑指南
【推荐】凌霞软件回馈社区,携手博客园推出1Panel与Halo联合终身会员
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步