xshell 1.0.109 → 1.0.110

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "xshell",
3
- "version": "1.0.109",
3
+ "version": "1.0.110",
4
4
  "type": "module",
5
5
  "main": "./index.js",
6
6
  "bin": {
package/server.d.ts CHANGED
@@ -34,6 +34,7 @@ export declare class Server {
34
34
  UAParser: typeof UAParser;
35
35
  js_exts: Set<string>;
36
36
  empty_body_statuses: Set<number>;
37
+ empty_body_methods: Set<string>;
37
38
  app: Koa;
38
39
  handler: ReturnType<Koa['callback']>;
39
40
  /** 启用 http server */
package/server.js CHANGED
@@ -25,6 +25,7 @@ export class Server {
25
25
  UAParser;
26
26
  js_exts = new Set(['.js', '.mjs', '.cjs']);
27
27
  empty_body_statuses = new Set([304, 204, 205]);
28
+ empty_body_methods = new Set(['HEAD', 'OPTIONS']);
28
29
  app;
29
30
  handler;
30
31
  /** 启用 http server */
@@ -484,7 +485,7 @@ export class Server {
484
485
  // 关联了 response_.body 到 res 的 finish 事件,(koa/response.js#set body() 中 onFinish(res, destroy.bind(null, response_.body))
485
486
  // 会让 response_.body 这个 UndiciBodyReadable 被提前 finish,而此时
486
487
  // 流还没 emit end, 会触发错误 RequestAbortedError [AbortError]: Request aborted
487
- if (this.empty_body_statuses.has(response_.status))
488
+ if (this.empty_body_statuses.has(response_.status) || this.empty_body_methods.has(method))
488
489
  consume_stream(response_.body, true);
489
490
  else
490
491
  response.body = response_.body;