前言
由于我们在平时编程的时候,有可能进场跨域的访问来请求我们的数据,如果每一次都写jsonp或者javascript都会给我们带来很大的工作量。
正文
首先,我们所熟悉的jsonp:
其次是:我们使用Javascript应编码来进行实现我们的代码:
<script type="text/javascript"> $(function () { function addScriptTag(src) { var script = document.createElement('script'); script.setAttribute("type", "text/javascript"); script.src = src; document.body.appendChild(script); } addScriptTag('http://open.iciba.com/dsapi/?callback=foo&date=' + dateString); }); function foo(data) { ...... }; </script>
最后是我们可以用Nginx代理来进行实现:
使用nginx代理是非常简单的,请看下面的操作过程:
首先在服务器上面更改请求的路径的代理:
一个配置文件里面的内容:
server { listen 80; server_name blog.breakpoint.vip; #rewrite ^/(.*) https://$server_name$1 permanent; #跳转到Https location / { proxy_pass http://127.0.0.1:8084; #add_header Cache-Control no-cache; #add_header Cache-Control no-store; add_header Access-Control-Allow-Origin '*'; } location ~*\.(txt){ root /home/breakpoint/file/; } location /proxy/ { rewrite ^/proxy/(.*)$ /$1 break; #对加了proxy前缀的请求加以区分,真正访问的时候移除这个前缀,这个前缀需要自定义 proxy_pass https://cn.bing.com; #将真正的请求代理到真实的服务器地址 } }
重新启动一下我们的nginx:
./nginx -s reload
之后我么请求一下网站,看一下我么最终的效果:
这是我们访问必应的每日一图,我们得到了我们想要的json。
至此结束。