| 1234567891011121314151617181920212223242526 |
- export class HttpError extends Error {
- constructor(kind, message = '请求失败', payload = null) {
- super(message)
- this.name = 'HttpError'
- this.kind = kind
- this.payload = payload
- }
- static fromParsed(parsed) {
- const map = {
- silent_fail: 'SILENT',
- biz_fail: 'BUSINESS',
- http_error: 'HTTP',
- passthrough: 'UNKNOWN'
- }
- return new HttpError(map[parsed.kind] || 'UNKNOWN', parsed.message, parsed.res)
- }
- static fromNetwork(err) {
- return new HttpError('NETWORK', err?.errMsg || '网络异常', err)
- }
- static fromUpload(res) {
- return new HttpError('UPLOAD', '上传失败', res)
- }
- }
|