用apache反向代理解决快递100跨域问题

1.缘由:做一个调用接口的测试,发现不管怎么调用http://www.kuaidi100.com/query这个接口都会产生跨域,有时候还能获取到数据 2.在FCC群里请教各位基佬的时候,有一个老哥提出了用nginx代理解决跨域问题

3于是我首先恶补了下解决跨域的几个方法以及跨域的原因

这里简单介绍一下反向代理:如下图所示,用户A一直使用原始服务器B的资源,但是用户A始终认为它访问的是原始服务器B而不是代理服务器Z,但实用际上反向代理服务器接受用户A的应答,从原始资源服务器B中取得用户A的需求资源,然后发送给用户A。由于防火墙的作用,只允许代理服务器Z访问原始资源服务器B。尽管在这个虚拟的环境下,防火墙和反向代理的共同作用保护了原始资源服务器B,但用户A并不知情。

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

js跨域解决方案 a.通过jsonp跨域 b.通过修改document.domain来跨子域 c.使用window.name来进行跨域 d.使用HTML5中新引进的window.postMessage方法来跨域传送数据

ajax跨域大同小异,这只是我的一些愚见 有不对的地方 请以wiki的解释为准

我这里采用apache 反向代理

<VirtualHost *:8082>
 ProxyRequests Off

    <Proxy *>
      Order deny,allow
      Allow from all
    </Proxy>
    ProxyPass /query http://www.kuaidi100.com/query
 
</VirtualHost>

请求如下

 $("#submit1").click(function() {

         var cp = $("#cp").find("option:selected").val();
         var cpd = $('#cpd')[0].value;
         var exprssurl = "http://127.0.0.1:8082/query?type=" + cp + "&postid=" + cpd;
         $.getJSON(exprssurl, function(data) {

             var obj = document.getElementById('content1');
             var ex = data;
             var text = [];

             text.push("快递单号: " + data.nu);
             text.push("快递详情: " + data.message);
             text.push("快递公司: " + data.com);
             text.push("其他: " + data.data);
             obj.innerText = text.join("\n ")


         });

转载于:https://my.oschina.net/mfeng/blog/885626

天梯(tianti) Java 轻量级的 CMS 解决方案-天梯。天梯是一个用 Java 相关技术搭建的后台 CMS 解决方案,用户可以结合自身业务进行相应扩展,同时提供了针对 dao、service 等的代码生成工具。技术选型:Spring Data JPA、Hibernate、Shiro、 Spring MVC、Layer、MySQL 等。 简介: 1、天梯是一款使用Java编写的免费的轻量级CMS系统,目前提供了从后台管理到前端展现的整体解决方案。 2、用户可以不编写一句代码,就制作出一个默认风格的CMS站点。 3、前端页面自适应,支持PC和H5端,采用前后端分离的机制实现。后端支持天梯蓝和天梯红换肤功能。 4、项目技术分层明显,用户可以根据自己的业务模块进行相应地扩展,很方便二次开发。 核心框架:Spring Framework 4.2.5.RELEASE 安全框架:Apache Shiro 1.3.2 视图框架:Spring MVC 4.2.5.RELEASE 数据库连接池:Tomcat JDBC 缓存框架:Ehcache ORM框架:Spring Data JPA、hibernate 4.3.5.Final 日志管理:SLF4J 1.7.21、Log4j 编辑器:ueditor 工具类:Apache Commons、Jackson 2.8.5、POI 3.15 view层:JSP 数据库:mysql、oracle等关系型数据库 前端 dom : Jquery 分页 : jquery.pagination UI管理 : common UI集成 : uiExtend 滚动条 : jquery.nicescroll.min.js 图表 : highcharts 3D图表 :highcharts-more 轮播图 : jquery-swipe 表单提交 :jquery.form 文件上传 :jquery.uploadify 表单验证 :jquery.validator 展现树 :jquery.ztree html模版引擎 :template
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值