const request = (method,url,params) =>{ // method (请求方式) url (请求的路径) params (请求的参数)
return new Promise((resolve,reject) =>{ // 创建一个promise函数
let baseUrl = "公共url"
uni.showLoading({ // 添加加载动画
title: '加载中'
})
uni.request({ // 发送请求
url: baseUrl + url, 正圆 // url 形参就是传入的地址
data: params? params:'', // 传入的请求参数
method: method, // 传入的请求方式
success: res =>{ // 成功的函数
resolve(res.data)
uni.hideLoading()
},
fail: err =>{ // 失败的函数
reject(err)
uni.hideLoading()
棚清颂 }
})
})
}
const api = {
get: (url,params) =>request("GET",url,params),
post: (url,params) =>request("POST",url,params)
}
export default api // 抛出接口
二、在request 文件目录下 创建一个 home文件夹 在home 文件夹内新建index.js文件
// 所有的首页的请求 ,都放在这里维护
import api from '../index.js'
export const get = params => api.get('路径',params) // get请求
export const post = params => api.post('路径',params) 链郑 // post请求
三、在所需要请求数据的页面内
import 请求名 from '文件路径'
1.第一步建立http文件夹 再建立http.js
2.第二步封装具薯态孝数稿体的请求,建立api.js
3.第三步在页面调用接闭颤口:
第一,进入小程序全局先进行获取微信code,用code作为参数请求接口得到用户登录信息,同时判断是否为新用户。第二,请求接口,发生登录失效(token失效)时,自动登录后,再重新请求。
第三,请求接口,当返回未登录(授权)提示时,做兼容。(比如跳到授权页,这个具体宴链看接口的业务逻辑)
在util.js中封装一些登录、请求方法。
1.调用微信登录,获取微信code
2.通过微信code登模颂录,获取用户信息(token,userInfo)
3.请求数据,这里只封装请求数据的参数与方法,不处理各种code
4.封装request请求方法,这里专门处理返回不同code的情况
各个页面中的接口数据请求,都是调用这个方法。
在app.js的onLaunch方旦祥郑法中,判断token和userInfo是否存在,存在就不是新用户,否则根据微信返回的code,去请求后端接口,查看返回的信息,是否为新用户。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)