问题标签 [request-promise]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
12406 浏览

node.js - RequestError:错误:读取 ECONNRESET nodejs

我尝试使用 nba.com api,但给我那个错误。

“RequestError:错误:在 Request.plumbing.callback (c:\ Users\Omer\Desktop\game\node_modules\request-promise-core\lib\plumbing.js:87:29) 在 Request.RP$callback [as _callback] (c:\Users\Omer\Desktop\game\node_modules\ request-promise-core\lib\plumbing.js:46:31) 在 self.callback (c:\Users\Omer\Desktop\game\node_modules\request\request.js:188:22) 在 emitOne (events.js :116:13) 在 Request.emit (events.js:211:7) 在 Request.onRequestError (c:\Users\Omer\Desktop\game\node_modules\request\request.js:884:8) 在 emitOne (events .js:116:13) 在 ClientRequest.emit (events.js:211:7) 在 TLSSocket.socketErrorListener (_http_client.js:387:9) 在 emitOne (events.js:116:13) 在 TLSSocket.emit (events.js:211:7) 在 _combinedTickCallback (internal/process/next_tick.js:138:11) 在 process._tickCallback ( internal/process/next_tick.js:180:9) 来自上一个事件:在 Request.plumbing.init (c:\Users\Omer\Desktop\game\node_modules\request-promise-core\lib\plumbing.js:36: 28) 在 Request.RP$initInterceptor [as init] (c:\Users\Omer\Desktop\game\node_modules\request-promise-core\configure\request2.js:41:27) 在新请求 (c:\Users \Omer\Desktop\game\node_modules\request\request.js:130:8) 在 requestStats (c:\Users\Omer\Desktop\game\node_modules\request\index.js:54:10) 在 requestStats (c: \Users\Omer\Desktop\game\modules\utils\crawlers\stats\nba.stats.crawler.js:23:12) 在 Object.crawl (c:\Users\Omer\Desktop\game\modules\utils\crawlers\stats\nba.stats.crawler.js:12:12) 在 Object.crawl (c:\Users\Omer\Desktop\game\modules\utils\crawlers \stats\stats.crawler.js:20:20) 在 Object.runCrawl (c:\Users\Omer\Desktop\game\modules\utils\crawlers\utils.crawler.js:27:18) 在 startCrawl (c: \Users\Omer\Desktop\game\scripts\useful\crawl.js:19:13) 在 loadConfig (c:\Users\Omer\Desktop\game\scripts\useful\crawl.js:12:5) 在 c: \Users\Omer\Desktop\game\config\lib\mongoose.js:35:21 at process._tickCallback (internal/process/next_tick.js:188:7)"\Users\Omer\Desktop\game\scripts\useful\crawl.js:19:13) 在 loadConfig (c:\Users\Omer\Desktop\game\scripts\useful\crawl.js:12:5) 在 c: \Users\Omer\Desktop\game\config\lib\mongoose.js:35:21 at process._tickCallback (internal/process/next_tick.js:188:7)"\Users\Omer\Desktop\game\scripts\useful\crawl.js:19:13) 在 loadConfig (c:\Users\Omer\Desktop\game\scripts\useful\crawl.js:12:5) 在 c: \Users\Omer\Desktop\game\config\lib\mongoose.js:35:21 at process._tickCallback (internal/process/next_tick.js:188:7)"

我的代码:

0 投票
1 回答
120 浏览

http2 - http2:PUSH_PROMISE 保留流 id 验证

规范说:

新建立的流的标识符在数值上必须大于发起端点已打开或保留的所有流。这管理使用 HEADERS 帧打开的流和使用 PUSH_PROMISE 保留的流。接收到意外流标识符的端点必须以 PROTOCOL_ERROR 类型的连接错误(第 5.4.1 节)响应。

对于发送服务器的情况PUSH_PROMISE,符合标准的服务器必须发送严格增加的流 ID,这对我来说是有意义的。但我不明白客户应该如何检测这种情况。

例如,在一个连接上,如果服务器发送:

  1. PUSH_PROMISE承诺流 2
  2. PUSH_PROMISE承诺流 4

由于并发,客户端可能会收到

  1. PUSH_PROMISE承诺流 4
  2. PUSH_PROMISE承诺流 2

规范会让我认为客户端应该对此出错,但服务器没有做错任何事情。

我在这里想念什么?

0 投票
1 回答
255 浏览

node.js - request-promise 无法传播错误

这是我的 rp 电话:

以及调用此函数的函数:

当我运行它时,如果 rp 调用成功,则一切正常。但如果它失败了,我永远不会在被调用函数中点击 catch() 块。

我无法传播 rp 调用引发的原始错误。

0 投票
2 回答
864 浏览

node.js - 存根对象而不需要方法

我有类似的东西:

它在遇到此代码时返回我的自定义响应:

但我怎么能做这样的事情:

哪个可以在遇到此代码时返回自定义响应?

当我尝试“存根”整个对象时,在运行测试时出现此错误:

rprequest-promise-native,它包装了request

0 投票
1 回答
1081 浏览

javascript - 使用 request-promise 在 nodejs 中链接 promise

我知道有很多东西可以解释这些概念,但我仍然很困惑为什么我的 node.js 示例不起作用。

我有一个主要功能

和两个 API 调用(getMyInfo 和 login),如下所示:

现在我想从另一个文件中调用我的 main 函数

不知何故,这仍然为我返回未定义,您能帮您找出原因吗?在我看来,login() 和 getMyInfo() 都返回一个承诺,因此 main() 也返回一个承诺,因为它返回 getMyInfo..

0 投票
1 回答
2413 浏览

reactjs - 如何模拟 React 组件单元测试的 request-promise-native?

包:Jest,Enzyme,(和 Nock 不起作用)。

我有以下反应组件:

我正在尝试为此实施单元测试,因此我想模拟 request-promise-native 并且assert阶段已根据结果(onResponse)相应地更改。

理想情况下,我想浅渲染组件,模拟单击事件并断言状态已更改(相应地)。

我尝试了各种方法,但要么我的测试没有等待请​​求返回,要么我没有真正模拟请求。

您能否提一些建议 ?

0 投票
0 回答
385 浏览

json - 使用 request-promise 查询第三方 json api

我一直试图让这个工作一整天,但我无法弄清楚问题是什么。我正在尝试使用请求承诺查询第三方 api,但我不断取回所有 json 对象,而不仅仅是第 1 天的对象。我的目标是获取用户输入的两个日期,然后显示平均温度该时间段的每一天。有没有更好的方法来做到这一点,或者我只是不明白如何解决这个问题?

示例 Json

GET /api/weather/averageTemps/something?day=1 HTTP/1.1 Host: localhost:3000 Cache-Control: no-cache Postman-Token: cd9b90cd-136b-0f47-981d-8f4862b8ff26

0 投票
0 回答
1779 浏览

javascript - 具有请求承诺管道结果的请求(大数据)

我尝试从外部 API 下载一些数据。我想管道每个请求的响应。包含请求 URL 的数组如下所示:

我读到request-promise不支持管道请求响应,但我还没有找到替代方案,这就是为什么我试图从中获取结果的函数如下所示:

另外,只能同时下载两个产品,我尝试使用 Blubird 参数来实现concurrency,但似乎无法正常工作。

我该如何解决我的问题?

更新

如果我尝试使用此代码:

我得到错误UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 2): ReferenceError: data.pipe is not a function

我错过了什么?

此外,我发现我的数据有 800MB 大。这是否太大而无法在没有错误的情况下进行管道传输?

我现在收到此错误:在buffer.js:556 if (encoding === undefined) return buf.utf8Slice(start, end); Error: "toString()" failed

0 投票
0 回答
195 浏览

node.js - 在邮递员中返回错误以获取访问令牌,但在 NodeJS 的控制台中工作

我试图在通过身份验证后使用授权代码访问令牌,它在我的控制台中使用 request-promise 模块为 nodejs 工作,但它在邮递员上不起作用它说

但是它适用于nodeJS的控制台

这是使用 nodeJS 的代码

我的代码有问题吗?谢谢,任何帮助将不胜感激。

0 投票
1 回答
1279 浏览

node.js - 从请求承诺中获取响应数据给出错误

使用 request promise 模块进行 post API 调用。该代码是从谷歌地图 api JSON 输出中获取“城市”详细信息,如下所示:

但是

给出以下错误:

如何解决控制台记录城市数据的错误?