axios 使用 json 数据发布请求

IT技术 javascript ajax reactjs redux axios
2021-05-25 21:20:27

我正在使用 Axios JS 库来发送 post json 请求。但我没有在服务器上收到任何东西。这是我的代码

const dt = JSON.stringify({"data":{"value":"gdfg1df2g2121dgfdg"}});
const request = axios.post(url, {dt});

我需要以json 格式发送原始正文

3个回答

默认情况下,axios使用 Json 来发布数据,因此您无需对数据进行字符串化。问题可能是你正在这样做。您可以尝试在没有它的情况下进行发布并检查它是否有效吗?此外,除非这是服务器中对象的格式,否则您不需要花括号来包装数据。否则,您能否提供有关请求正文的信息,以便我了解更多上下文?您可以使用网络选项卡在 chrome 开发工具中检查

您不需要对有效负载进行字符串化。Axios 会在它发送请求时为你做这件事。

const dt = { data: { value: "gdfg1df2g2121dgfdg" }};
const request = axios.post(url, dt);

以 json 为主体的 post 请求的 Axios:

  static async postService(path, data = {}) {
    const requestUrl = HttpRequest._getRequestUrl(path);

    try {
      const ret = await axios.post(requestUrl, JSON.stringify(data));
      console.log('Request result ', ret);
    } catch (error) {
      console.error(`Request error: ${error.message}`);
    }
  }