将postman api调用转换为Node.js调用

将postman api调用转换为Node.js调用,node.js,swagger,postman,swagger-2.0,Node.js,Swagger,Postman,Swagger 2.0,我在尝试对使用swagger 2.0(不是我自己)制作的API发出post请求时遇到了一些麻烦 我已经向postman导入了一个集合,当我执行post请求时,它工作得非常完美。然而,在Node.js中,swagger库输出400错误,axios输出500错误 以下是集合在postman中提供的模式: { "workflowFunctionID": 1, "workflowActionParameters": [ { "name": "Description",

我在尝试对使用swagger 2.0(不是我自己)制作的API发出post请求时遇到了一些麻烦

我已经向postman导入了一个集合,当我执行post请求时,它工作得非常完美。然而,在Node.js中,swagger库输出400错误,axios输出500错误

以下是集合在postman中提供的模式:

{
  "workflowFunctionID": 1,
  "workflowActionParameters": [
    {
      "name": "Description",
      "value": "Probando y wea2",
      "workflowFunctionParameterId": 2
    },
    {
        "name": "Price",
        "value": "25000",
        "workflowFunctionParameterId": 3
    }
  ]
}
正如我提到的,它工作得非常好。这是我使用Node.js的当前代码:

main = async() => {
  try {
    const token = await acquireTokenWithClientCredentials(RESOURCE, CLIENT_APP_Id, CLIENT_SECRET, AUTHORITY);

    const request = {
      url: `${WORKBENCH_API_URL}/api/v1/contracts?workflowId=1&contractCodeId=1&connectionId=1`,
      method: "POST",
      headers: { 'Content-Type': 'application/json', 'Authorization': `Bearer ${token.access_token}` },
      body: {
        workflowActionInput: {
          workflowFunctionID: 1,
          workflowActionParameters: [{
              "name": "description",
              "value": "cualkier wea"
            },
            {
              "name": "price",
              "value": "20000000"
            }
          ]
        }
      }
    }

    let res = await Swagger.http(request);

    console.log(res);
  }
  catch (err) {
    console.error(err);
  }
}

main();

我应该如何将正文/表单数据传递给post请求,或者使用其他包或代码?提前感谢您的帮助。

当您在postman中运行api时,只需看到我用黑色标记的名为“code”的按钮

  • 点击这个按钮
  • 选择语言作为node.js
它将在node.js中显示该api的代码,只需复制该代码并粘贴到需要的地方。
在此附上照片,请看

您好,谢谢您的回答。我还有最后一个问题,有必要添加邮递员令牌字段吗?不,没有必要,您可以删除邮递员令牌和缓存控制。它成功了,谢谢!!即使是微软也帮不了我!在您离开之前,是否有办法在邮递员发出的承载令牌请求中查看Node.js代码?您可以在“授权”选项卡中设置授权,然后选择“预览请求”(重要!)。如果您现在单击代码链接,您将看到包含承载令牌的标题。