美文网首页
关于vue中axios的跨域问题

关于vue中axios的跨域问题

作者: 刘宇焱 | 来源:发表于2017-08-09 10:42 被阅读814次

    最近在使用axios的post请求时,遇到一点问题,在post请求数据时,经常会报跨域问题。最后在看request发现没有content-type,后来查询文章时发现axios默认是application/json格式的。所以在http请求时,就会报出跨域问题。

    解决方法:

    为了解决这个问题,我们需要使用qs.stringfy(data)这种形式,要不然即使添加了请求头,最后的content-type的形式还是json的。

    但有时候数据为了保密,进行了加密,还是会出现问题的,所以,为了万无一失,推荐大家使用jquery的ajax。

    参考文档:https://github.com/mzabriskie/axios#using-applicationx-www-form-urlencoded-format


    更新于2017-09-06       axios的跨域问题---使用proxyTable

    关于axios的跨域问题,还有一种方法可以进行跨域,就是使用proxyTable进行跨域

    首先我们要知道proxyTable在哪,我们需要找到config---index.js里面的dev可以找到

    比如我们要请求的地址是http:127.0.0.1:8380/myFirstWebApp/List

    这是在proxyTable的设置就是如下图1

    修改好设置后我们请求的url就只需要改成图2的形式

    图1 图2

    一些注意的问题:

    1、proxyTable的参数意义:target就是我们需要替换的ip和端口号。changOrigin就是是否用localhost替换请求的url。pathRewrite就是资源的重定向。

    2、当我们修改proxyTable的参数时,需要重启项目,要不然不会起作用的,因为这属于项目配置项,不重启项目的话是不会应用到项目的。

    3、这只是为了解决开发时的跨域问题。可以测试接口的办法。

    参考地址:https://github.com/chimurai/http-proxy-middleware

    相关文章

      网友评论

          本文标题:关于vue中axios的跨域问题

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