【问题标题】:Don't get expected result Node Fetch POST没有得到预期的结果 Node Fetch POST
【发布时间】:2020-06-18 03:16:28
【问题描述】:

我试图监控我的订单包

所以有包裹跟踪号。

也许它没有提交

我需要从预期的页面获取结果,但似乎我在 base_url 上

代码:

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

const base_url = "https://www2.correios.com.br/sistemas/rastreamento/";
const data = { acao: "track", objetos: "OD769124717BR", btnPesq: "Buscar" };

fetch(base_url, {
  method: "POST",
  body: JSON.stringify(data),
  headers: {
    acceptEncoding: "gzip, deflate, br",
    connections: "keep-alive",
  },
})
  .then((results) => results.text())
  .then(console.log);

表单数据来源:

acao=track&objetos=OD729124717BR&btnPesq=Buscar

【问题讨论】:

  • 你能确定 url 是一个有效的 API 端点吗?

标签: javascript node.js post get request


【解决方案1】:

您是否尝试过在 fetch 中添加一个 catch?如果您这样做,您将看到错误消息“无法获取”。我已将此添加到您现有的示例中,以便您自己尝试:

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

const base_url = "https://www2.correios.com.br/sistemas/rastreamento/";
const data = { acao: "track", objetos: "OD769124717BR", btnPesq: "Buscar" };

fetch(base_url, {
  method: "POST",
  body: JSON.stringify(data),
  headers: {
    acceptEncoding: "gzip, deflate, br",
    connections: "keep-alive",
  },
})
  .then((results) => results.text())
  .then(console.log)
  .catch(error => console.error("Error:", error.message));

我建议您在命令行中使用 cURL 命令进行一些简单的测试,或者使用 Postman 或 SOAP UI 等 GUI 工具来确保在测试此端点时拥有有效的 URL 和数据参数。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-01-24
    • 2021-12-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多