美文网首页
vue与apache设置的地址不一致

vue与apache设置的地址不一致

作者: 丶Assassin丨 | 来源:发表于2018-09-07 15:43 被阅读0次

    目前的项目是这样的,比如本机地址是:http://127.0.0.1:8080,后台地址是:http://127.0.0.1,然后前端项目跑起来的地址是http://127.0.0.1,项目当中使用 axios,baseUrl = http://127.0.0.1/

    所以每次发起请求就跨域了,不知道这种情况是怎么解决跨域问题的?

    其实跨域最常用的解决方式就两种

    1 . CORS 后端设置 header

    Access-Control-Allow-Origin: * 允许哪些域名 (*所有)

    Access-Control-Allow-Headers: X-Requested-With 允许哪些请求头

    Access-Control-Allow-Methods: PUT,POST,GET,DELETE,OPTIONS 允许哪些方法 (非简单请求会有option)

    后台配置完之后 axios

    baseUrl = 后端服务器地址 (开发模式)

    baseUrl = 线上服务器地址 (生产模式)

    2 . 代理 

    跨域是浏览器限制的 后端直接请求并不限制 

    所以可以 浏览器 -> 代理服务器 -> 后端 -> 代理服务器 -> 浏览器

    react vue脚手架 都是 用的 webpack-dev-server 其内部都是用 http-proxy-middleware

    你也可以自己用node简单的代理 http http-proxy-middleware http-proxy 都可以

    也可以用 nginx 

    配置完代理之后 axios

    baseUrl = 代理服务器地址 (开发模式)

    baseUrl = 线上服务器地址 (生产模式)

    相关文章

      网友评论

          本文标题:vue与apache设置的地址不一致

          本文链接:https://www.haomeiwen.com/subject/dbtuvftx.html