将 Javascript Fetch API 与 Hapi 一起使用
Posted
技术标签:
【中文标题】将 Javascript Fetch API 与 Hapi 一起使用【英文标题】:Using the Javascript Fetch API with Hapi 【发布时间】:2017-09-29 10:14:29 【问题描述】:我用 Hapi 创建了一个简单的 API,它有一个可以 POST 到的路由,如下所示:
server.route(
method: "POST",
path: "/hello",
handler: function(request, reply)
// It doesn't ever get to here
return reply(hello: request.payload.name);
,
config:
validate:
payload:
name: Joi.string().required()
);
我可以在 Postman 中成功向该路径发送 POST 请求: 它返回预期的响应。但是,当我使用这段 javascript 发送请求时:
fetch("http://localhost:1111/hello",
mode: "cors"
body: name: "John Doe"
).then(() =>
console.log("yay! it worked");
);
这失败了,并且说“值”必须是一个对象。
【问题讨论】:
【参考方案1】:事实证明,我只需要先对 JSON 进行字符串化,然后就可以了:
fetch("http://localhost:1111/hello",
mode: "cors"
body: JSON.stringify(name: "John Doe")
).then(() =>
console.log("yay! it worked");
);
【讨论】:
以上是关于将 Javascript Fetch API 与 Hapi 一起使用的主要内容,如果未能解决你的问题,请参考以下文章
Javascript Fetch API - 如何将输出作为对象保存到变量(不是承诺)
如何使用 fetch 将 FormData 从 javascript 发送到 ASP.NET Core 2.1 Web API
使用 Javascript Fetch API 发送的快速解析文件
使用 javascript fetch api 执行 POST 请求