@yangguoxin/fin-request

2.0.15 • Public • Published

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' 请求方式
async true 是否异步
data null 请求参数
contentType 'text/plain;charset=UTF-8'
dataType 'json' response数据类型,可选'text'
timeout 30000 超时时间
withBase false 追加基础参数
merge false 和基础参数做合并,用于修改基础参数,withBase=false 生效
sign false 是否生成签名
debug false 是否走测试环境

单独使用签名函数

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

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 判断是否小程序环境

Readme

Keywords

none

Package Sidebar

Install

npm i @yangguoxin/fin-request

Weekly Downloads

0

Version

2.0.15

License

ISC

Unpacked Size

102 kB

Total Files

20

Last publish

Collaborators

  • ygx763123