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

网站建设 中企动力厨具北京百度推广代理公司

网站建设 中企动力厨具,北京百度推广代理公司,网页编程是什么,贵州省网站集约化建设前言 如果使用nuxt3写项目,可以查看nuxt3实战:完整的 nuxt3 vue3 项目创建与useFetch请求封装,此篇内容有详细步骤 但在此篇内容中useFetch请求在页面有多个请求的情况下,或者放在客户端渲染情境下是失败的,所以在此篇…
  • 前言

如果使用nuxt3写项目,可以查看nuxt3实战:完整的 nuxt3 + vue3 项目创建与useFetch请求封装,此篇内容有详细步骤

但在此篇内容中useFetch请求在页面有多个请求的情况下,或者放在客户端渲染情境下是失败的,所以在此篇更新下useFetch的请求封装方法:

/*** @description  useFetch* */
import type { NitroFetchRequest } from "nitropack";
import type { UseFetchOptions } from "#app";
import type { ResultData } from "~/api/interface";
import { Base64 } from "js-base64";
import { rsaEncrypt } from "~/utils/ras";
import { Encrypt } from "~/utils/aes";
import { md5 } from "js-md5";const apiRequest = <T>(url: NitroFetchRequest,reqParams: object = {},_object: UseFetchOptions<T>
) => {const runtimeConfig = useRuntimeConfig();const token = useCookie<string | undefined>("token");const defaultOptions: UseFetchOptions<T> = {baseURL: runtimeConfig.public.baseAPI,onRequest({ options }) {let _data: {[prop: string]: any;} = {...reqParams,};if (token.value) {_data["userUuid"] = token.value;}// Gets the current timestampconst timestamp = new Date().getTime();// Generate an AES Keyconst aesKey = Base64.encode("jupai" + timestamp);// Service parameter aes encryption// console.log(_data, "_data");let reqContent = encodeURIComponent(Encrypt(JSON.stringify(_data), aesKey));// md5 signatureconst md5Sign = md5(reqContent).toUpperCase();// UrlDecode Decrypts the public keyconst rsaSign = encodeURIComponent(rsaEncrypt(aesKey));const params = {version: "1.0.0",osType: "1",reqContent: reqContent,md5Sign: md5Sign,rsaSign: rsaSign,timeStamp: timestamp,gps: "gps",_data,};options.headers = {...(token.value && { "X-Access-Token": token.value }),...(_object.headers || {}),...options.headers,} as { [key: string]: string };options.body = JSON.stringify(params);},onResponse({ response }) {if (response._data.code !== "200" && response._data.code !== "12010") {if (import.meta.client) {message.error(response._data.message);}}},onResponseError({ response }) {if (import.meta.client) {message.error(response._data.message);}},};return useFetch<ResultData<T>>(url, {...defaultOptions,..._object,} as any);
};export const getApi = async <T>(url: NitroFetchRequest,reqParams: object = {},_object: UseFetchOptions<T> = {}
) => {const { data } = await apiRequest<T>(url, reqParams, {method: "get",..._object,});return data;
};export const postApi = async <T>(url: NitroFetchRequest,reqParams: object = {},_object: UseFetchOptions<T> = {}
) => {const { data } = await apiRequest<T>(url, reqParams, {method: "POST",..._object,});return data;
};
  • 使用:
  • /api/modules/index
export const getList= (params: ReqLotList) => {return postApi<ResLotList[]>("/api/getList", params);
};
  • index.vue
const list= await getList({pageNum: 1,pageSize: 8
});
http://www.wooajung.com/news/674.html

相关文章:

  • 织梦茶叶网站模板免费下载营销方法
  • 有专门做网站的公司吗百度指数分析工具
  • 南宁网站空间百度推广多少钱一个月
  • 广州10大网站服务品牌系统优化软件排行榜
  • 已备案域名30元购买平台东莞网站seo技术
  • 怎么用ps做网站首页图片产品seo是什么意思
  • 提供秦皇岛网站建设不收费推广网站有哪些
  • 合优网站建设seo推广优化
  • 做网站什么价位长春关键词优化报价
  • 微信文章导入wordpress搜狗搜索引擎优化论文
  • 做网站 点击跳转河南网站seo
  • 济南教育论坛网站建设网页生成
  • 搜搜网站提交入口查排名官网
  • 章丘住房建设委员会网站百度提交入口网址在哪
  • 网站内容过滤广告平台有哪些
  • 用树莓派做网站服务器好吗seo培训网的优点是
  • 手机网站建设ppt网站怎么创建
  • 用html网站登录界面怎么做优化
  • 在印度做视频网站广州最新新闻
  • 手机wap版网站制作软文营销经典案例
  • 北京网站设计引流微信hyhyk1百度贴吧热线客服24小时
  • 网站开发技能证书竞价排名推广
  • 广州监狱门户网站百度竞价投放
  • 微软手机做网站服务器吗淘宝数据查询
  • sql网站开发2345王牌浏览器
  • 做互联网小程序 和网站有没有前景广州最新消息今天
  • 一个独立IP做几个网站比较合适哈市今日头条最新
  • 郁金香导航 汕头大学网址大全百度seo排名优化公司
  • zencart网站地图插件跨境电商平台哪个最好最可靠
  • 满洲里网站制作网站联盟