2.0.15 • Published 3 years ago

@yangguoxin/fin-request v2.0.15

Weekly downloads
-
License
ISC
Repository
-
Last release
3 years ago

fin-request

支持基础参数h5加签base64的ajax库

安装

安装前,请确保已经切换到小黑鱼NPM

$ npm install @blackfish/fin-request --save

使用

例如:

import { request } from '@blackfish/fin-request'
// ...
request({
  url: 'https://api.XXX.com',
  method: 'POST',
  merge: true, // 采用合并方式
  sign: true, // 生成签名
  data: {
    baseParams: {pValue},
    bizParams: data
  }
}).then(res => successHandle(res)) // 成功处理
  .catch(error => errorHandle(error)) // 失败处理

参数说明

参数默认值说明
url''请求地址
method'GET'请求方式
asynctrue是否异步
datanull请求参数
contentType'text/plain;charset=UTF-8'
dataType'json'response数据类型,可选'text'
timeout30000超时时间
withBasefalse追加基础参数
mergefalse和基础参数做合并,用于修改基础参数,withBase=false 生效
signfalse是否生成签名
debugfalse是否走测试环境

单独使用签名函数

如果你只想单独使用签名功能,可以参考如下例子

import { sign } from '@blackfish/fin-request'

let data = { // 请求入参
  baseParams: {
    // ...
  },
  bizParams: {
    // ...
  },
  timestamp: '1525952105841' // 请求时间戳
}
// 加签
sign(data) // sign(data, true) 走测试环境拿盐值
// data 已增加签名字段
console.log(data)

// { // 请求入参
//   baseParams: {
//     // ...
//   },
//   bizParams: {
//     // ...
//   },
//   sign: XXXXXXXXXXXXXXXX,
//   timestamp: '1525952105841' // 请求时间戳
// }

单独使用基础参数

import { getDefaultParams } from '@blackfish/fin-request'

url query 参数

bf_ai

appId 通过url形式设置,用于在app外的页面需要设置appId的情况。

appId枚举

说明

为了更符合现代框架,减小包的体积,最新打包>=2.0.0的打包已经不将es6的polyfil打包进入库中,需要业务项目单独引入babel-polyfill。或者babel-loader include本库进行transform-runtime

更新日志

v2.0.7

  • ios baseParams 不能覆盖问题

v2.0.6

  • stringify 循环引用报错

v2.0.5

  • deviceIdXhy 新增字段

v2.0.4

  • ajax 请求error 返回
  • 风控设备指纹区分环境

v2.0.3

  • 基础参数添加风控设备指纹

v2.0.2

  • 采用mini-shim 判断是否小程序环境