uni-app介面封裝
阿新 • • 發佈:2022-02-12
1.新建 common和request.js
2.修改request.js
var commoneRequestUrl = 'http://192.168.168.168:8001' //介面統一訪問連結 //介面封裝 function request(data1) { // Promise 非同步程式設計的一種解決方案 var promise = new Promise((resolve, reject) => { uni.request({ url: commoneRequestUrl + data1.url, //拼接訪問介面完整地址 //url:data1.url,//不想拼接傳完整介面地址(不推薦,維護很麻煩) data: data1.data || {}, //向後端傳遞的資料(預設空物件{}) method: data1.method || 'GET', //介面型別(預設GET請求) header: { 'content-type': data1.type || 'application/json;charset=UTF-8', //內容型別(預設 application/json;charset=UTF-8)//'Authorization': "Bearer " + uni.getStorageSync('user_token'),//新增請求頭(看後端需不需要) //'token': uni.getStorageSync('user_token'),//傳token(看後端需不需要) }, success: function(res) { console.log(res); //介面訪問成功 resolve(res.data); }, fail:function(err) { console.log(err); //介面訪問失敗 reject(err); } }) }); return promise; } module.exports = request;
3. 全域性引用
修改 main.js
//全域性使用 import request from '@/common/request.js' Vue.prototype.requestfz = request
頁面使用
this.requestfz({ url: '/login', //介面一部分路徑 data: { '賬號': '123456789', '密碼': '132', }, //需要傳的引數(不需要可以忽略,比如GET請求) method: 'POST', //請求方式 (GET請求可以忽略) //其他引數需要寫,不需要直接忽略 }).then(res1 => { //resolve()進入這裡 console.log(res1); }, err => { //reject()進入這裡 console.log(err); })