vue.js學習之 跨域請求代理與axios傳參


vue.js學習之 跨域請求代理與axios傳參

一:跨域請求代理

1:打開config/index.js

module.exports{
    dev: {
    }
}

在這里面找到proxyTable{},改為這樣:

proxyTable: {
      '/api': {
        target: 'http://121.41.130.58:9090',//設置你調用的接口域名和端口號 別忘了加http
        changeOrigin: true,
        pathRewrite: {
          '^/api': ''//這里理解成用‘/api’代替target里面的地址,后面組件中我們掉接口時直接用api代替 比如我要調用'http://40.00.100.100:3002/user/add',直接寫‘/api/user/add’即可
        }
      }
    }

2:在需要調接口的組件中這樣使用:

axios.post('/api/yt_api/login/doLogin',postData)
	.then(function (response) {
		console.log(1)
		console.log(response);
	})
	.catch(function (error) {
		console.log(error);
	})

  注意:原接口:http://http://121.41.130.58:9090/yt_api/login/doLogin

      頁面調用:http://localhost:8081/api/yt_api/login/doLogin ——這里多了一個/api/不是多余的,不要刪

 

二:axios傳參

1:Vue官方推薦組件axios默認就是提交 JSON 字符串,所以我們要以json字符串直接拼接在url后面的形式,直接將json對象傳進去就行了

let postData = {
  companyCode:'tur',
  userName:'123456789123456789',
  password:'123456'
}
axios.get('/api/yt_api/login/doLogin',{
  params: {
    ...postData,
  }
})
.then(function (response) {
  console.log(1)
  console.log(response);
})
.catch(function (error) {
  console.log(error);
});

這里我們將postData這個json對象傳入到post方法中,頁面中的形式為:

 

2:以key:val的形式傳參

let postData = qs.stringify({
	companyCode:'tur',
	userName:'123456789123456789',
	password:'123456'
})

我們需要對這個json對象操作,這里的qs你需要先安裝

npm install qs

再導入

import qs from 'qs'

面中的形式為:

 

最新鏈接:

1、如何在項目里管理好axios請求與vuex

2、 利用vue-cli + vant搭建一個移動端開發模板


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM