@stroll/http
TypeScript icon, indicating that this package has built-in type declarations

0.0.17 • Public • Published

http

axios 接口 请求 二次封装

安装

npm i -S @stroll/http

引入

import http from '@stroll/http'

实例化

/**
 * http 初始化参数
 * @param { PSMSC: '' } String 或 (string|number)Array 需要弹出信息得成功code
 * @param { baseURL: 'https://api.***.com' } String 域名 默认当前地址
 * @param { url: '/getUserInfo' } String 请求路径
 * @param { withCredentials: true | false } Boolean 是否允许携带凭证 可选参数 默认true
 * @param { method: 'get' | 'post' | 'put' | 'delete' | ... } String 请求方式 可选参数 默认get
 * @param { timeout: 3000 } Number 请求超时 单位毫秒 可选参数 默认3秒
 * @param { headers: {} } Json header体 可选参数 默认为空
 * @param { data: {} } Json|Number|String|Array body体 可选参数 默认为空
 * @param { params: {} } Json URL参数 可选参数 默认为空
 * @param { reqFn: (config) => {} } 函数 请求前拦截 参数config
 * @param { resFn: (response) => {} } 函数 响应后拦截 参数response
 * @param { res: (res) => {} } 函数 请求成功处理 回传参数res
 * @param { rej: (err) => {} } 函数 请求失败处理 回传参数err
 * @param { await: [{ method: 请求方式, url: 请求路径 }] } Array 需要同步的接口 方式为可选参数,路径为必传参数
 **/
const api = http.init({
  ...
})
// OR 
const api = new http({
  ...
})

使用

/**
 * get-url方式
 * @param1 url: string|{} - 路径
 * - {
 * -  url?: string - 路径
 * -  params?: unknown - 参数
 * -  baseURL?: string - 域名 默认当前地址
 * -  prompt?: boolean - 是否打开报错提示(需要与message配合)
 * -  timeout?: number - 请求超时 单位毫秒 可选参数 默认3秒
 * - }
 * @param2 params: unknown - 参数
 * @param3 setUp - 响应配置可选
 * - {
 * -  baseURL?: string 域名 默认当前地址
 * -  prompt?: boolean 是否打开报错提示(需要与message配合)
 * -  timeout?: number 请求超时 单位毫秒 可选参数 默认3秒
 * - }
 * @returns Promise<unknown>
 */
api.GetUrl(url, ...)

/**
 * post-url方式
 * @param1 url: string|{} - 路径
 * - {
 * -  url?: string - 路径
 * -  params?: unknown - 参数
 * -  baseURL?: string - 域名 默认当前地址
 * -  prompt?: boolean - 是否打开报错提示(需要与message配合)
 * -  timeout?: number - 请求超时 单位毫秒 可选参数 默认3秒
 * - }
 * @param2 params: unknown - 参数
 * @param3 setUp - 响应配置可选
 * - {
 * -  baseURL?: string 域名 默认当前地址
 * -  prompt?: boolean 是否打开报错提示(需要与message配合)
 * -  timeout?: number 请求超时 单位毫秒 可选参数 默认3秒
 * - }
 * @returns Promise<unknown>
 */
api.PostUrl(url, ...)

/**
 * get-url 文件下载方式
 * @param1 url: string|{} - 路径
 * - {
 * -  url?: string - 路径
 * -  params?: unknown - 参数
 * -  baseURL?: string - 域名 默认当前地址
 * -  prompt?: boolean - 是否打开报错提示(需要与message配合)
 * -  timeout?: number - 请求超时 单位毫秒 可选参数 默认3秒
 * - }
 * @param2 params: unknown - 参数
 * @param3 setUp - 响应配置可选
 * - {
 * -  baseURL?: string 域名 默认当前地址
 * -  prompt?: boolean 是否打开报错提示(需要与message配合)
 * -  timeout?: number 请求超时 单位毫秒 可选参数 默认3秒
 * - }
 * @returns Promise<unknown>
 */
api.GetExport(url, ...)

/**
 * post-url 文件下载方式
 * @param1 url: string|{} - 路径
 * - {
 * -  url?: string - 路径
 * -  params?: unknown - 参数
 * -  baseURL?: string - 域名 默认当前地址
 * -  prompt?: boolean - 是否打开报错提示(需要与message配合)
 * -  timeout?: number - 请求超时 单位毫秒 可选参数 默认3秒
 * - }
 * @param2 params: unknown - 参数
 * @param3 setUp - 响应配置可选
 * - {
 * -  baseURL?: string 域名 默认当前地址
 * -  prompt?: boolean 是否打开报错提示(需要与message配合)
 * -  timeout?: number 请求超时 单位毫秒 可选参数 默认3秒
 * - }
 * @returns Promise<unknown>
 */
api.PostExportUrl(url, ...)

/**
 * get-body方式
 * @param1 url: string|{} - 路径
 * - {
 * -  url?: string - 路径
 * -  data?: unknown - 参数
 * -  baseURL?: string - 域名 默认当前地址
 * -  prompt?: boolean - 是否打开报错提示(需要与message配合)
 * -  timeout?: number - 请求超时 单位毫秒 可选参数 默认3秒
 * - }
 * @param2 data: unknown - 参数
 * @param3 setUp - 响应配置可选
 * - {
 * -  baseURL?: string 域名 默认当前地址
 * -  prompt?: boolean 是否打开报错提示(需要与message配合)
 * -  timeout?: number 请求超时 单位毫秒 可选参数 默认3秒
 * - }
 * @returns Promise<unknown>
 */
api.GetBody(url, ...)

/**
 * post-body方式
 * @param1 url: string|{} - 路径
 * - {
 * -  url?: string - 路径
 * -  data?: unknown - 参数
 * -  baseURL?: string - 域名 默认当前地址
 * -  prompt?: boolean - 是否打开报错提示(需要与message配合)
 * -  timeout?: number - 请求超时 单位毫秒 可选参数 默认3秒
 * - }
 * @param2 data: unknown - 参数
 * @param3 setUp - 响应配置可选
 * - {
 * -  baseURL?: string 域名 默认当前地址
 * -  prompt?: boolean 是否打开报错提示(需要与message配合)
 * -  timeout?: number 请求超时 单位毫秒 可选参数 默认3秒
 * - }
 * @returns Promise<unknown>
 */
api.PostBody(url, ...)

/**
 * get-body 文件下载方式
 * @param1 url: string|{} - 路径
 * - {
 * -  url?: string - 路径
 * -  data?: unknown - 参数
 * -  baseURL?: string - 域名 默认当前地址
 * -  prompt?: boolean - 是否打开报错提示(需要与message配合)
 * -  timeout?: number - 请求超时 单位毫秒 可选参数 默认3秒
 * - }
 * @param2 data: unknown - 参数
 * @param3 setUp - 响应配置可选
 * - {
 * -  baseURL?: string 域名 默认当前地址
 * -  prompt?: boolean 是否打开报错提示(需要与message配合)
 * -  timeout?: number 请求超时 单位毫秒 可选参数 默认3秒
 * - }
 * @returns Promise<unknown>
 */
api.PostExportBody(url, ...)

/**
 * get-body-form-data 数据流传输方式
 * @param1 url: string|{} - 路径
 * - {
 * -  url?: string - 路径
 * -  data?: unknown - 参数
 * -  baseURL?: string - 域名 默认当前地址
 * -  prompt?: boolean - 是否打开报错提示(需要与message配合)
 * -  timeout?: number - 请求超时 单位毫秒 可选参数 默认3秒
 * - }
 * @param2 data: unknown - 参数
 * @param3 setUp - 响应配置可选
 * - {
 * -  baseURL?: string 域名 默认当前地址
 * -  prompt?: boolean 是否打开报错提示(需要与message配合)
 * -  timeout?: number 请求超时 单位毫秒 可选参数 默认3秒
 * - }
 * @returns Promise<unknown>
 */
api.PostFormDate(url, ...)

Readme

Keywords

none

Package Sidebar

Install

npm i @stroll/http

Weekly Downloads

0

Version

0.0.17

License

ISC

Unpacked Size

75.8 kB

Total Files

37

Last publish

Collaborators

  • nangongyunyao