vscode使用picgo上传失败,代理连接超时问题解决

文章目录
  1. 1. 问题描述
  2. 2. 排除思路
  3. 3. 解决办法

问题描述

在使用vscode的picgo插件进行剪切板文件上传的时候,文件总是上传不成功。在picgo的client里面设置了proxy之后,错误变成了链接我的国外代理服务器超时,端口是443。

中间碰到的问题有下面几个错误:

1
2
3
4
5
6
7
8
9
10
11
12
13
RequestError: Error: read ECONNRESET
at new RequestError (/Users/stivenyang/.vscode/extensions/spades.vs-picgo-2.1.6/node_modules/request-promise-core/lib/errors.js:14:1)
at Request.plumbing.callback (/Users/stivenyang/.vscode/extensions/spades.vs-picgo-2.1.6/node_modules/request-promise-core/lib/plumbing.js:87:1)
at Request.RP$callback [as _callback] (/Users/stivenyang/.vscode/extensions/spades.vs-picgo-2.1.6/node_modules/request-promise-core/lib/plumbing.js:46:1)
at self.callback (/Users/stivenyang/.vscode/extensions/spades.vs-picgo-2.1.6/node_modules/request/request.js:185:1)
at Request.emit (node:events:526:28)
at Request.onRequestError (/Users/stivenyang/.vscode/extensions/spades.vs-picgo-2.1.6/node_modules/request/request.js:877:1)
at ClientRequest.emit (node:events:538:35)
at TLSSocket.socketErrorListener (node:_http_client:442:9)
at TLSSocket.emit (node:events:526:28)
at emitErrorNT (node:internal/streams/destroy:157:8)
at emitErrorCloseNT (node:internal/streams/destroy:122:3)
at processTicksAndRejections (node:internal/process/task_queues:83:21)
1
2
3
4
5
6
7
8
9
10
11
12
13
RequestError: Error: connect ETIMEDOUT x.24.xx.174:443
at new RequestError (/Users/stivenyang/.vscode/extensions/spades.vs-picgo-2.1.6/node_modules/request-promise-core/lib/errors.js:14:1)
at Request.plumbing.callback (/Users/stivenyang/.vscode/extensions/spades.vs-picgo-2.1.6/node_modules/request-promise-core/lib/plumbing.js:87:1)
at Request.RP$callback [as _callback] (/Users/stivenyang/.vscode/extensions/spades.vs-picgo-2.1.6/node_modules/request-promise-core/lib/plumbing.js:46:1)
at self.callback (/Users/stivenyang/.vscode/extensions/spades.vs-picgo-2.1.6/node_modules/request/request.js:185:1)
at Request.emit (node:events:526:28)
at Request.onRequestError (/Users/stivenyang/.vscode/extensions/spades.vs-picgo-2.1.6/node_modules/request/request.js:877:1)
at ClientRequest.emit (node:events:538:35)
at TLSSocket.socketErrorListener (node:_http_client:442:9)
at TLSSocket.emit (node:events:526:28)
at emitErrorNT (node:internal/streams/destroy:157:8)
at emitErrorCloseNT (node:internal/streams/destroy:122:3)
at processTicksAndRejections (node:internal/process/task_queues:83:21)
1
2
3
4
5
6
7
8
9
10
11
12
13
RequestError: Error: connect ETIMEDOUT 8.7.198.46:443
at new RequestError (/Users/stivenyang/.vscode/extensions/spades.vs-picgo-2.1.6/node_modules/request-promise-core/lib/errors.js:14:1)
at Request.plumbing.callback (/Users/stivenyang/.vscode/extensions/spades.vs-picgo-2.1.6/node_modules/request-promise-core/lib/plumbing.js:87:1)
at Request.RP$callback [as _callback] (/Users/stivenyang/.vscode/extensions/spades.vs-picgo-2.1.6/node_modules/request-promise-core/lib/plumbing.js:46:1)
at self.callback (/Users/stivenyang/.vscode/extensions/spades.vs-picgo-2.1.6/node_modules/request/request.js:185:1)
at Request.emit (node:events:526:28)
at Request.onRequestError (/Users/stivenyang/.vscode/extensions/spades.vs-picgo-2.1.6/node_modules/request/request.js:877:1)
at ClientRequest.emit (node:events:538:35)
at TLSSocket.socketErrorListener (node:_http_client:442:9)
at TLSSocket.emit (node:events:526:28)
at emitErrorNT (node:internal/streams/destroy:157:8)
at emitErrorCloseNT (node:internal/streams/destroy:122:3)
at processTicksAndRejections (node:internal/process/task_queues:83:21)

排除思路

  1. 看上面几个错误的调用栈,猜测可能是在上传的时候,连接不到上传服务器导致的。
  2. 连接不到服务器很奇怪,我设置的代理为什么没用?而且我的代理服务器端口肯定也不是443
  3. 那就是说真正的代理不是在picgo的客户端设置的,而是要在vscode里面设置。

下面进行了尝试:

  1. 设置picgo客户端里面的代理 (无效)
  2. 设置vscode里面的configpathdatapath,和client使用的一致 (无效)
  3. 设置vscode本身的代理 (成功上传)

解决办法

设置vscode的代理,如下图:
20230313154408

设置之后再次进行截图,并在vscode界面按 command + option + u 上传成功