@aligov/util

数字政务中后台项目的一些工具包,包括 cookie、request 等。

request

基于 umi-request 封装的请求库,包含错误处理等功能。umi-request 底层使用了 whatwg-fetch 提供的能力。

用法

import { request } from '@aligov/util';

request('/api/list').then(res => { console.log(res); })

详细配置参数间 umi-requestwhatwg-fetch,下面列出常见用法。

常见用法:

options 常用属性

options.extraOptions umi-request 扩展属性

window.__autoLogin__ === true 时会在要求登录时自动跳转到 /login 页面。

csrf token

获取 csrf token,目前是从 cookie 中获取 ctoken 的值。

import { getCToken } from '@aligov/util';

getCToken();

url

import { url } from '@aligov/util';

const urlObj = url.parse(location.search);

const link = url.format(urlObj);

基于 url

cookie

import { cookie } from '@aligov/util';

cookie.get('cookie-name');

基于 js-cookie

参考

DEMO 列表

request

本 Demo 演示一行文字的用法。

import { request } from '@aligov/util';

request('/api/404')
    .catch(err => {
        console.log(err.message);
    });

request.get('/api/h', {params: {a: 1, b: 2}});
request.post('/api/h', {data: {a: 1, b: 2}});

request('/api/404', {
  extraOptions: {
    autoShowError: false
  }
}).catch(err => {
  console.log('custom error', err.message);
});