带有 json 数据的 axios 发布请求
Posted
技术标签:
【中文标题】带有 json 数据的 axios 发布请求【英文标题】:axios post request with json data 【发布时间】:2017-08-14 23:13:26 【问题描述】:我正在使用 Axios JS 库来发送 post json 请求。但我在服务器上没有收到任何东西。这是我的代码
const dt = JSON.stringify("data":"value":"gdfg1df2g2121dgfdg");
const request = axios.post(url, dt);
我需要发送 以 json 格式发布原始正文。
【问题讨论】:
您发送的标头是什么? 不发送任何标头。我用邮递员测试了服务器,没有任何标题,服务器工作正常。 不确定,但试试const request = axios.post('https://api.medlanes.com/booking_center/call/get_products', dt);
是的,工作......
【参考方案1】:
axios 默认使用 Json 来发布数据,因此您不需要对数据进行字符串化。问题可能是你正在这样做。您可以尝试在没有它的情况下发布帖子并检查它是否有效吗?此外,除非这是服务器中对象的格式,否则您不需要花括号来包装数据。否则,您能否提供有关请求正文的信息,以便我了解更多上下文?您可以使用网络选项卡在 chrome 开发工具中进行检查
【讨论】:
这正是我所需要的。 :)【参考方案2】:您不需要对有效负载进行字符串化。 Axios 会在它发送请求时为你做这件事。
const dt = data: value: "gdfg1df2g2121dgfdg" ;
const request = axios.post(url, dt);
【讨论】:
请编辑您的答案以包含有关如何解决问题的说明。这将使原始发布者和将来的其他用户的答案更易于理解和有用。谢谢。【参考方案3】:Axios 用于以 json 为主体的 post 请求:
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`);
【讨论】:
以上是关于带有 json 数据的 axios 发布请求的主要内容,如果未能解决你的问题,请参考以下文章