@jayfong/x-request 2.54.0 → 2.55.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/_cjs/index.js CHANGED
@@ -4,12 +4,12 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  exports.__esModule = true;
5
5
  exports.xr = exports.XRequestFormUrlencoded = exports.XRequestFormStream = exports.XRequestFormFile = exports.XRequestFormData = exports.XRequest = void 0;
6
6
  var _assert = _interopRequireDefault(require("assert"));
7
+ var _fs = _interopRequireDefault(require("fs"));
8
+ var _stream = require("stream");
7
9
  var _formData = _interopRequireDefault(require("form-data"));
8
10
  var _formstream = _interopRequireDefault(require("formstream"));
9
- var _fs = _interopRequireDefault(require("fs"));
10
11
  var _got = _interopRequireDefault(require("got"));
11
12
  var _proxyAgent = require("proxy-agent");
12
- var _stream = require("stream");
13
13
  var _vtils = require("vtils");
14
14
  class XRequestFormUrlencoded extends URLSearchParams {}
15
15
  exports.XRequestFormUrlencoded = XRequestFormUrlencoded;
@@ -93,7 +93,8 @@ class XRequest {
93
93
  https: {
94
94
  rejectUnauthorized: false
95
95
  },
96
- isStream: responseType === 'stream'
96
+ isStream: responseType === 'stream',
97
+ throwHttpErrors: !options.noThrowHttpErrors
97
98
  };
98
99
  if (options.headers) {
99
100
  gotOptions.headers = options.headers;
@@ -119,10 +120,10 @@ class XRequest {
119
120
  }
120
121
 
121
122
  // 头处理
122
- gotOptions.headers = (0, _vtils.mapKeys)(gotOptions.headers || {}, (v, k) => k.toLowerCase());
123
+ gotOptions.headers = (0, _vtils.mapKeys)(gotOptions.headers || {}, (_v, k) => k.toLowerCase());
123
124
  (_gotOptions$headers$_ = (_gotOptions$headers = gotOptions.headers)[_userAgent = 'user-agent']) != null ? _gotOptions$headers$_ : _gotOptions$headers[_userAgent] = (_options$userAgent = options.userAgent) != null ? _options$userAgent : 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36';
124
- if (options.autoReferer && gotOptions.headers['referer'] == null) {
125
- gotOptions.headers['referer'] = options.url;
125
+ if (options.autoReferer && gotOptions.headers.referer == null) {
126
+ gotOptions.headers.referer = options.url;
126
127
  }
127
128
  return gotOptions;
128
129
  }
package/lib/index.d.ts CHANGED
@@ -1,9 +1,9 @@
1
1
  /// <reference types="node" />
2
2
  /// <reference types="node" />
3
+ import { Readable } from 'stream';
3
4
  import FormData from 'form-data';
4
5
  import FormStream from 'formstream';
5
6
  import Request from 'got/dist/source/core';
6
- import { Readable } from 'stream';
7
7
  import { CookieJar } from 'tough-cookie';
8
8
  import { OmitStrict } from 'vtils/types';
9
9
  export interface XRequestOptions {
@@ -70,6 +70,12 @@ export interface XRequestOptions {
70
70
  * @default false
71
71
  */
72
72
  autoReferer?: boolean;
73
+ /**
74
+ * 是否不抛出 HTTP 错误
75
+ *
76
+ * @default false
77
+ */
78
+ noThrowHttpErrors?: boolean;
73
79
  }
74
80
  export interface XRequestResponse<T> {
75
81
  status: number;
package/lib/index.js CHANGED
@@ -1,10 +1,10 @@
1
1
  import assert from 'assert';
2
+ import fs from 'fs';
3
+ import { Readable } from 'stream';
2
4
  import FormData from 'form-data';
3
5
  import FormStream from 'formstream';
4
- import fs from 'fs';
5
6
  import got from 'got';
6
7
  import { ProxyAgent } from 'proxy-agent';
7
- import { Readable } from 'stream';
8
8
  import { mapKeys } from 'vtils';
9
9
  export class XRequestFormUrlencoded extends URLSearchParams {}
10
10
  export class XRequestFormData extends FormData {
@@ -84,7 +84,8 @@ export class XRequest {
84
84
  https: {
85
85
  rejectUnauthorized: false
86
86
  },
87
- isStream: responseType === 'stream'
87
+ isStream: responseType === 'stream',
88
+ throwHttpErrors: !options.noThrowHttpErrors
88
89
  };
89
90
  if (options.headers) {
90
91
  gotOptions.headers = options.headers;
@@ -110,10 +111,10 @@ export class XRequest {
110
111
  }
111
112
 
112
113
  // 头处理
113
- gotOptions.headers = mapKeys(gotOptions.headers || {}, (v, k) => k.toLowerCase());
114
+ gotOptions.headers = mapKeys(gotOptions.headers || {}, (_v, k) => k.toLowerCase());
114
115
  (_gotOptions$headers$_ = (_gotOptions$headers = gotOptions.headers)[_userAgent = 'user-agent']) != null ? _gotOptions$headers$_ : _gotOptions$headers[_userAgent] = (_options$userAgent = options.userAgent) != null ? _options$userAgent : 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36';
115
- if (options.autoReferer && gotOptions.headers['referer'] == null) {
116
- gotOptions.headers['referer'] = options.url;
116
+ if (options.autoReferer && gotOptions.headers.referer == null) {
117
+ gotOptions.headers.referer = options.url;
117
118
  }
118
119
  return gotOptions;
119
120
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jayfong/x-request",
3
- "version": "2.54.0",
3
+ "version": "2.55.0",
4
4
  "license": "ISC",
5
5
  "sideEffects": false,
6
6
  "main": "lib/_cjs/index.js",