当前位置: 首页 > news >正文

杭州网站建站平台小程序订货系统

杭州网站建站平台,小程序订货系统,小程序前端开发教程,网站扁平结构1、封装http.ts //utils--->http.ts/*** 添加拦截器* 拦截request请求* 拦截uploadFile文件上传** TODO* 1、非http开头需要拼接地址* 2、请求超时* 3、添加小程序端请求头标识* 4、添加token请求头标识*/ import { useMemberStore } from /stores/index const member…

1、封装http.ts


//utils--->http.ts/*** 添加拦截器*  拦截request请求*  拦截uploadFile文件上传** TODO*  1、非http开头需要拼接地址*  2、请求超时*  3、添加小程序端请求头标识*  4、添加token请求头标识*/
import { useMemberStore } from '@/stores/index'
const memberStore = useMemberStore()//实际项目种的baseUrl是根据环境变量来获取的
const baseUrl = 'https://xx/xx/xx'const httpInterceptor = {invoke(args: UniApp.RequestOptions) {// 拦截前触发,拼接urlif (!args.url.startsWith('http')) {args.url = baseUrl + args.url}//请求超时时间,默认60sargs.timeout = 10000//添加小程序请求头标志args.header = {...args.header,'source-client': 'miniapp',}//添加tokenconst token = memberStore.profile?.tokenif (token) {args.header.Authorization = token}},
}
// 添加拦截器
uni.addInterceptor('request', httpInterceptor)
uni.addInterceptor('uploadFile', httpInterceptor)//定义泛型,接口返回的数据结构
interface Data<T> {code: stringmsg: stringresult: T
}
export const http = <T>(options: UniApp.RequestOptions) => {return new Promise<Data<T>>((resolve, reject) => {uni.request({...options,// 响应成功success(res) {if (res.statusCode >= 200 && res.statusCode < 300) {resolve(res.data as Data<T>)} else if (res.statusCode === 401) {//401错误,清理用户信息,跳转登录页,调用rejectmemberStore.clearProfile()uni.navigateTo({ url: '/pages/login/login' })reject(res)} else {//通用错误,调用rejectuni.showToast({title: (res.data as Data<T>).msg || '请求错误',icon: 'none',})reject(res)}},fail(err) {//响应失败,网络错误,调用rejectuni.showToast({title: '网络错误,换个网络试试',icon: 'none',})reject(err)},})})
}

2、封装api


//api--->my.ts
import { http } from '@/utils/http'export const getBanner = (data: any) => {return http<string[]>({url: '/xx/xx',method: 'GET',data: data,})
}

3、使用封装好的api


<script setup lang="ts">
import { getBanner } from '@/api/my'const getData = async () => {const res = await getBanner({})console.log(1111, res)
}
</script>
http://www.yayakq.cn/news/919538/

相关文章:

  • 网站外链发布平台赣州网站建设哪家便宜
  • 网站做联盟广告能赚钱吗知名的软件开发公司
  • 网站建设公司如何规避风险相亲网站建设方案
  • 新沂网站建设看p站用什么浏览器
  • 宁波高端网站设计价格网络做翻译的网站
  • 网站开发费税率是多少钱门店推广是什么意思
  • 北京怎样做网站推广wordpress加漂浮广告
  • 做网站需要有什么叫网站被k
  • 莆田企业制作网站北京建设银行官方网站
  • 网站建设的指标用page打开wordpress
  • 厦门淘宝网站设计公司wordpress 收费主题
  • 北?? 网站建设木门东莞网站建设技术支持
  • 达尔罕茂明安网站建设专门提供做ppt小素材的网站
  • 专业网站定制价格聊城开发网站建设
  • 甘肃企业建站系统费用网站创建免费用户
  • 交易网站开发文档如何建设网站?
  • 网站后缀wordpress的文章tag标签
  • 写作网站vir建筑公司企业愿景内容
  • 网站关键词的写法宫免费网站
  • 如何免费做网站赚钱免费私人网站建设软件
  • 网站设计找谁做网站模板 收费
  • 汉中市建设工程招投标信息网官网网站的meta标签优化
  • 中小企业一站式服务平台海口网约车
  • 怎样在建设部网站上查公司信息如何seo网站推广
  • 网站建设手机网站瑞安做网站建设
  • 深圳分销网站设计哪些网站是用php开发的
  • 白银市做网站ps软件免费
  • 用python做网站的多吗百度包年推广网站建设
  • 制作网站页面WordPress发文章同步
  • 网站开发需要的学历wordpress哪个版本