最近在学习vuejs,到了数据读取接口这一块了,想读取知乎的一些数据和自己博客写的接口,因为后台的接口都没有写jsonp 的方法,而且jsonp只支持get的求求,导致读取数据出现跨域问题,得想法办法解决了。
采用nginx 代码的方式,但是仔细想象还是治标不治本啊,有什么方法可以在程序里面自己解决呢?
由于我的vuejs 项目是基于 express 的nodejs 环境,nodejs 有扩展,可以实现接口的代码,然后就可以完美的解决跨域这个头疼的问题了。
- npm 引入
$ npm install --save-dev http-proxy-middleware
写代码
var express = require('express');
var proxyMiddleware = require('http-proxy-middleware')
var ChuckNorrisProxy = proxy('/blog', {
target: 'http://www.leborn.me',
changeOrigin: true, //非常重要,必不可少
logLevel: 'debug' //代理log输出
});
var app = express();
/**
* Add the proxy to express
*/
app.use(ChuckNorrisProxy);
app.listen(3000);
然后打开浏览器 localhost:3000. 正常访问express 的页面,
浏览器加上 localhost:3000/blog/home/page