• Vue项目中跨域问题解决


    • 后台更改header
    • 使用http-proxy-middleware 代理解决(项目使用vue-cli脚手架搭建)
    • Jquery jsonp

    一、后台更改header

    header('Access-Control-Allow-Origin:*');//允许所有来源访问 
    header('Access-Control-Allow-Method:POST,GET');//允许访问的方式

    二、使用http-proxy-middleware 代理解决(项目使用vue-cli脚手架搭建)

    打开config/index.js,在proxyTable中添写如下代码:

    proxyTable: { 
      '/api': { 
        target: '填写请求源地址', //源地址 
        changeOrigin: true, //是否跨域
        pathRewrite: { 
          '^/api': '' //路径重写 
          } 
      } 
    }

    使用axios

     this.$axios.post("/api/地址",{
         发送的数据
        }).then(data=>{
          console.log(data);
        })

    axios的配置(main.js)

    axios.defaults.headers.post["Content-type"]="application/json";
    Vue.prototype.$axios=axios;

    使用ES6fetch请求

    fetch("/api/test/testToken.php",{
          method:"post",
          headers:{
            "Content-type":"application/json",
          },
          body:JSON.stringify({发送数据})
        }).then(result=>{
          return result.json()
        }).then(data=>{
          console.log(data);
        })

    三、使用jquery jsonp

    methods: { 
      getData () { 
        var self = this 
        $.ajax({ 
          url: '地址', 
          type: 'GET', 
          dataType: 'JSONP', 
          success: function (res) { 
            self.data = res.data.slice(0, 3)
            self.opencode = res.data[0].opencode.split(',') 
          } 
        }) 
      } 
    } 
  • 相关阅读:
    imagemagick-图片
    selenium-嘿
    centos命令行连接无线网络
    centos7安装桌面合盖不休眠
    mysql执行命令:ERROR 1820 (HY000): You must reset your password
    编码规范 C++
    Docker使用总结
    JAVA使用总结
    VS IDE 相关
    编程网站总结
  • 原文地址:https://www.cnblogs.com/SallyShan/p/11638149.html
Copyright © 2020-2023  润新知