123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127 |
-
- import Taro from '@tarojs/taro'
- import { getQueryString } from '.'
-
- const logger = Taro.getRealtimeLogManager()
-
- export default (url, options) => {
- const { params, skipError, header, ...leftOptions } = options || {}
- const queryStr = getQueryString(params)
-
- const urlWithParams = queryStr ? `${url}?${queryStr}` : url;
- const nwUrl = `${HOST}/api/wx${urlWithParams}`
-
- const authToken = Taro.getStorageSync('token')
- const tokenHeader = authToken ? { 'X-Authorization-JWT': authToken } : {}
- const nwHeader = {
- ...(header || {}),
- ...tokenHeader,
- }
-
- return new Promise((resolve, reject) => {
- Taro.request({
- ...leftOptions,
- url: nwUrl,
- header: nwHeader,
- success: (res) => {
- const { code, message, data, token } = res.data
-
- if (token || data?.token) {
- Taro.setStorage({ key: 'token', data: token || data?.token })
- }
-
- if (code === 1000) {
- resolve(data)
- } else {
- console.error(res)
-
- logger.error(nwUrl)
- logger.error(options)
- logger.error(res)
-
- if (!skipError) {
- Taro.showToast({
- title: message||'网络异常',
- icon: 'none',
- })
- }
-
- reject(message?.indexOf('java') > -1 ? '系统内部错误' : message)
- }
- },
-
- fail: (err) => {
- console.error(err)
-
- logger.error('网络错误')
- logger.error(nwUrl)
- logger.error(options)
- logger.error(err)
-
- const message = err.message || err.errMsg || err
-
- if (!skipError) {
- Taro.showToast({
- title: message,
- icon: 'none',
- })
- }
-
- reject(message)
- }
- })
- })
- }
-
-
- export function uploadFile(filePath) {
-
- const authToken = Taro.getStorageSync('token')
- const tokenHeader = authToken ? { 'X-Authorization-JWT': authToken } : {}
-
- return new Promise((resolve, reject) => {
- Taro.uploadFile({
- // eslint-disable-next-line no-undef
- url: `${HOST}/api/wx/image`,
- filePath,
- name: 'file',
- header: tokenHeader,
- success: (res) => {
- if (res.errMsg === 'uploadFile:ok') {
- const { code, message, data, token } = JSON.parse(res.data)
-
- if (token || data?.token) {
- Taro.setStorage({ key: 'token', data: token || data?.token })
- }
-
- if (code === 1000) {
- resolve(data)
- } else {
- console.error(res)
-
- logger.error("上传文件失败")
- logger.error(res)
-
- reject(message?.indexOf('java') > -1 ? '系统内部错误' : message)
- }
- } else {
- console.error(res)
-
- logger.error("上传文件失败")
- logger.error(res)
-
- reject(res.errMsg)
- }
- },
- fail: (err) => {
- console.error(err)
-
- logger.error("上传文件失败")
- logger.error(err)
-
- const message = err.message || err.errMsg || err
- reject(message)
- }
- })
- })
- }
|