1.在根目錄utils中新增request.js,(post也可以改成這種promise寫法,post暫時用的回調寫法)並寫:
var app = getApp(); //項目URL相同部分,減輕代碼量,同時方便項目遷移 //這里因為我是本地調試,所以host不規范,實際上應該是你備案的域名信息 var host = '域名'; /** * POST請求, * URL:接口 * postData:參數,json類型 * doSuccess:成功的回調函數 * doFail:失敗的回調函數 */ function Request(url, postData, doSuccess, doFail) { wx.request({ //項目的真正接口,通過字符串拼接方式實現 url: host + url, header: { "content-type": "application/json;charset=UTF-8" }, data: postData, method: 'POST', success: function (res) { //參數值為res.data,直接將返回的數據傳入 doSuccess(res.data); }, fail: function () { doFail(); }, }) } //GET請求,不需傳參,直接URL調用, function GetData(url) { return new Promise((resolve,reject)=>{ wx.request({ url: host + url, header: { "content-type": "application/json;charset=UTF-8" }, method: 'GET', success: function (res) { resolve(res.data); }, fail: function () { reject(); }, }) }) } /** * module.exports用來導出代碼 * js文件中通過var call = require("../util/request.js") 加載 * 在引入引入文件的時候" "里面的內容通過../../../這種類型,小程序的編譯器會自動提示,因為你可能 * 項目目錄不止一級,不同的js文件對應的工具類的位置不一樣 */ module.exports = { Request, GetData, }
2.調用
var call = require("../../utils/request.js")
Page({ getData() { call.GetData('/service_today').then(res=>{ console.log(123,res); }) }, })
注:開發階段不必用https請求,可先用http請求,等開發完成配合后台設置為https請求(勾上這個http本地開發階段用就不會報錯了)。