全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

详解VueJs前后端分离跨域问题

使用vue-cli搭建的vue项目

可以使用在项目内设置代理(proxyTable)的方式来解决跨域问题

设置配置项的目录在config下的index.js,主要通过配置proxyTable项,设置代理指向你的后台地址

dev: {
  env: require('./dev.env'),
  port: 8085,
  autoOpenBrowser: true,
  assetsSubDirectory: 'static',
  assetsPublicPath: '/',
  proxyTable: {
   '/agent': {
    target: 'http://127.0.0.1:7105/',
    changeOrigin: true,
    pathRewrite: {
     '^/agent': ''
    }
   }
  },
  // CSS Sourcemaps off by default because relative paths are "buggy"
  // with this option, according to the CSS-Loader README
  // (https://github.com/webpack/css-loader#sourcemaps)
  // In our experience, they generally work as expected,
  // just be aware of this issue when enabling this option.
  cssSourceMap: false
 }

前端使用vue-resource来发起请求时

//在main.js中设置公用的地址
Vue.prototype.rootUrl = '/agent/';

//在具体page中发起请求的方式
that.$http.post(this.rootUrl + 'login', parms).then(function (response) {
     // 响应成功回调
     console.log(response);
    }, function (response) {
     // 响应错误回调
    });

其他方式搭建的前端项目,通过使用nginx启动前端服务同时配置代理

下列是我的nginx配置文件,不管是通过什么方式搭建的前端项目,构建成功后都会输出一个dist文件,我们只需要将nginx服务目录指向你的dist文件下你项目的入口文件即可

我的文件目录是 root D:\openplatform\portal\webapp\dist; 更改此条配置到你的目录 我入口文件名称是index.html 使用的是vue-cli打包的项目,参考vue-cli npm run build的dist目录,指向那个目录下

#user nobody;
worker_processes 4;

#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;

#pid    logs/nginx.pid;

events {
  worker_connections 1024;
}

http {
  include    mime.types;
  default_type application/octet-stream;

  #log_format main '$remote_addr - $remote_user [$time_local] "$request" "$status" $body_bytes_sent "$http_referer" "$http_user_agent" "$http_x_forwarded_for" "$gzip_ratio" $request_time $bytes_sent $request_length';

  log_format main '[$time_iso8601] [$remote_addr] [$request] [$http_user_agent] [$cookie_customerID_cookie_flag] [$args]';

  access_log logs/access.log main;

  sendfile    on;
  #tcp_nopush   on;

  #keepalive_timeout 0;
  keepalive_timeout 65;

  gzip on;
  gzip_min_length 1k;
  gzip_buffers 4 16k;
  gzip_http_version 1.0;
  gzip_comp_level 3;
  gzip_proxied any;
  gzip_types *;

  server {
    listen     80;
    root D:\openplatform\portal\webapp\dist;
    index index.html;

    location / {
       try_files $uri $uri/ @router;
       index index.html;
      }
  location @router {
       rewrite ^.*$ /index.html last;
    }
  location ^~/agent/ {
      proxy_pass  http://127.0.0.1:7105/;
      proxy_redirect  http://127.0.0.1:7105/ /;
      proxy_set_header Host $host;
      proxy_set_header X-Real-IP $remote_addr;
      proxy_set_header REMOTE-HOST $remote_addr;
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      proxy_connect_timeout 600s;
      proxy_read_timeout 600s;
      proxy_send_timeout 600s;
    }
  }


  # another virtual host using mix of IP-, name-, and port-based configuration
  #
  #server {
  #  listen    8000;
  #  listen    somename:8080;
  #  server_name somename alias another.alias;

  #  location / {
  #    root  html;
  #    index index.html index.htm;
  #  }
  #}


  # HTTPS server
  #
  #server {
  #  listen    443 ssl;
  #  server_name localhost;

  #  ssl_certificate   cert.pem;
  #  ssl_certificate_key cert.key;

  #  ssl_session_cache  shared:SSL:1m;
  #  ssl_session_timeout 5m;

  #  ssl_ciphers HIGH:!aNULL:!MD5;
  #  ssl_prefer_server_ciphers on;

  #  location / {
  #    root  html;
  #    index index.html index.htm;
  #  }
  #}
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# vue  # 前后端分离  # 跨域  # vue.js  # vue.js实现前后端分离  # 基于vue实现网站前台的权限管理(前后端分离实践)  # 详解Vue微信授权登录前后端分离较为优雅的解决方案  # Vue之前端体系与前后端分离详解  # Vue实现前后端完全分离的项目实战  # 使用Vue创建前后端分离项目的完整过程(前端部分)  # 回调  # 的是  # 只需  # 可以使用  # 要将  # 配置文件  # 大家多多  # 目录下  # page  # post  # login  # function  # console  # response  # parms  # issue  # enabling  # cssSourceMap  # work  # expected 


相关文章: 头像制作网站在线制作软件,dw网页背景图像怎么设置?  宝塔新建站点报错如何解决?  娃派WAP自助建站:免费模板+移动优化,快速打造专业网站  专业网站建设制作报价,网页设计制作要考什么证?  完全自定义免费建站平台:主题模板在线生成一站式服务  网页设计与网站制作内容,怎样注册网站?  广州营销型建站服务商推荐:技术优势与SEO优化解析  定制建站是什么?如何实现个性化需求?  非常酷的网站设计制作软件,酷培ai教育官方网站?  python的本地网站制作,如何创建本地站点?  建站为何优先选择香港服务器?  如何用IIS7快速搭建并优化网站站点?  网站制作免费,什么网站能看正片电影?  建站之星后台密码遗忘如何找回?  建站之星安装路径如何正确选择及配置?  道歉网站制作流程,世纪佳缘致歉小吴事件,相亲网站身份信息伪造该如何稽查?  制作国外网站的软件,国外有哪些比较优质的网站推荐?  建站之星logo尺寸如何设置最合适?  微网站制作教程,不会写代码,不会编程,怎么样建自己的网站?  建站ABC备案流程中有哪些关键注意事项?  自助网站制作软件,个人如何自助建网站?  如何选择适配移动端的WAP自助建站平台?  合肥制作网站的公司有哪些,合肥聚美网络科技有限公司介绍?  如何在建站主机中优化服务器配置?  建站之星如何实现五合一智能建站与营销推广?  网站建设制作、微信公众号,公明人民医院怎么在网上预约?  建站之星如何助力网站排名飙升?揭秘高效技巧  建设网站制作价格,怎样建立自己的公司网站?  建站之星如何快速更换网站模板?  Android使用GridView实现日历的简单功能  C++如何将C风格字符串(char*)转换为std::string?(代码示例)  建站之星备案是否影响网站上线时间?  公司门户网站制作流程,华为官网怎么做?  深圳网站制作公司好吗,在深圳找工作哪个网站最好啊?  如何选择美橙互联多站合一建站方案?  如何获取开源自助建站系统免费下载链接?  制作宣传网站的软件,小红书可以宣传网站吗?  中山网站推广排名,中山信息港登录入口?  ,巨量百应是干嘛的?  定制建站平台哪家好?企业官网搭建与快速建站方案推荐  网站制作培训多少钱一个月,网站优化seo培训课程有哪些?  北京网站制作公司哪家好一点,北京租房网站有哪些?  安云自助建站系统如何快速提升SEO排名?  高防网站服务器:DDoS防御与BGP线路的AI智能防护方案  淘宝制作网站有哪些,淘宝网官网主页?  盘锦网站制作公司,盘锦大洼有多少5G网站?  建站VPS能否同时实现高效与安全翻墙?  阿里云网站搭建费用解析:服务器价格与建站成本优化指南  东莞市网站制作公司有哪些,东莞找工作用什么网站好?  c++ stringstream用法详解_c++字符串与数字转换利器 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。