小编San*_*S B的帖子

等待一半的承诺解决

我想并行处理多个异步调用NodeJS。如果特定数量的这些呼叫得到解决或全部完成(一些解决,一些拒绝),我可以继续。如何做到这一点?

Promise.All()当所有承诺都完成时解决,Promise.Any()当任何一个承诺解决或全部被拒绝时解决。有什么办法可以等待 50% 的承诺解决或n解决承诺数量,而不是等待所有承诺解决。

javascript node.js promise

6
推荐指数
1
解决办法
246
查看次数

请求生锈火箭服务器从 JavaScript 应用程序拒绝错误连接

我有一个 Rust 服务器在我的机器上运行,本地主机,端口:4200。我正在尝试使用使用 axios 库的 JavaScript 客户端向该服务器发出请求。

运行时的代码给出以下错误:

错误:connect ECONNREFUSED 127.0.0.1:4200 at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1191:14)

我尝试重写代码以使用 fetch 库。这也返回连接拒绝错误。

从 Postman 尝试时,API 按要求工作。Get 调用也在浏览器中工作。从 JavaScript 调用时,无法找出此调用的连接被拒绝的原因。

我在 Rust 服务器中启用了 CORS 选项。

fn main() {
    let options = rocket_cors::Cors::default();

    rocket::ignite()
        .mount("/", routes![index, sign, generate])
        .attach(options)
        .launch();
}
Run Code Online (Sandbox Code Playgroud)

编辑:

从我的机器运行时出现上述错误的客户端代码:

const fetch = require("node-fetch");

var requestOptions = {
  method: "GET",
  headers: { "Content-Type": "application/json" }
};

fetch("http://localhost:4200/createOffer/1/license", requestOptions)
  .then(response => response.text())
  .then(result => console.log(result))
  .catch(error => console.log("error", error));
Run Code Online (Sandbox Code Playgroud)

在我的机器上工作的浏览器请求: http://localhost:4200/createOffer/1/license

javascript rust rust-rocket

0
推荐指数
1
解决办法
1131
查看次数

标签 统计

javascript ×2

node.js ×1

promise ×1

rust ×1

rust-rocket ×1