我想在fetch POST请求中传递一个空值。
为了说明这个例子,这里有一个来自我的API客户端Insomnia (相当于Postman)的屏幕截图。

这篇关于失眠的文章返回了想要的结果。
现在我试着用javascript用下面的代码来实现:
let decal_colo = document.querySelector('#decal_colo').value.trim();
if (!decal_colo) {decal_colo=null};
let owner = document.querySelector('#owner').value.trim();
console.log(decal_colo, owner)
const response = await fetch('/api/testFilter', {
method: 'POST',
body: JSON.stringify({ decal_colo, owner }),
headers: { 'Content-Type': 'application/json' },
});
if (response.ok) {
const filteredData = await response.json();
console.log(filteredData);您可以看到,如果用户没有提供任何输入,我将尝试在此行中传递null值:
if (!decal_colo) {decal_colo=null};这将console.log一个值null,但是我的API路由没有以同样的方式解释它。没有错误,但返回的结果为零。我已经查看了数据库,应该会返回一些结果。
如果有用的话,我正在使用sequelize来创建我的模型和控制器
如何以正确的方式传递null?
发布于 2021-06-04 21:16:23
在失眠应用程序中,您将发送一个JSON对象,但在JavaScript代码中,您将发送一个字符串。将body: JSON.Stringify替换为:
body: { decal_colo, owner }https://stackoverflow.com/questions/67837836
复制相似问题