Node.js 飞行前请求不';无法通过访问控制检查:它没有HTTP ok状态问题,并且我没有';i don’我不知道为什么,我进口的东西都是对的
我得到了一个错误,上面写着“对飞行前请求的响应未通过访问控制检查:它没有HTTP ok状态。”有人知道这可能是什么吗 这是我在后端的代码: app.jsNode.js 飞行前请求不';无法通过访问控制检查:它没有HTTP ok状态问题,并且我没有';i don’我不知道为什么,我进口的东西都是对的,node.js,angular,mongodb,express,mongoose,Node.js,Angular,Mongodb,Express,Mongoose,我得到了一个错误,上面写着“对飞行前请求的响应未通过访问控制检查:它没有HTTP ok状态。”有人知道这可能是什么吗 这是我在后端的代码: app.js app.delete("api/posts/:id", (req,res,next) =>{ console.log(req.params.id); res.status(200).json({message: 'post deleted!'}) }) 这是前端的代码: posts.service.ts:
app.delete("api/posts/:id", (req,res,next) =>{
console.log(req.params.id);
res.status(200).json({message: 'post deleted!'})
})
这是前端的代码:
posts.service.ts:
deletePost(postId: string) {
this.http
.delete('http://localhost:3000/api/posts/' + postId)
.subscribe(() => {
console.log('deleted');
});
}
post-list.component.ts
onDelete(postId: string) {
this.postsService.deletePost(postId);
}
和post-list.component.html:
<button mat-button color="warn" (click)="onDelete(post.id)">DELETE</button>
下面是问题的图片:
飞行前请求不会作为“正常”请求处理。它们具有http选项标头。因此,在设置CORS标头的代码段之后,只需添加以下行:
app.options('/*', (_, res) => {
res.sendStatus(200);
});
这只是将状态设置为200,应该可以解决您的问题。飞行前请求不会作为“正常”请求处理。它们具有http选项标头。因此,在设置CORS标头的代码段之后,只需添加以下行:
app.options('/*', (_, res) => {
res.sendStatus(200);
});
这只是将状态设置为200,应该可以解决您的问题。在浏览器中检查标题是否确实存在于选项响应中。.在浏览器中检查标题是否确实存在于选项响应中。.不过,我在删除时没有发现404的问题。。有没有办法解决这个问题?顺便说一句,这个问题已经解决了,谢谢!这个错误发生在哪里?我没有发现它就在那个下面,这里:不过,我有一个404的问题,没有在删除中找到。。有没有办法解决这个问题?顺便说一句,这个问题已经解决了,谢谢!这个错误发生在哪里?我没发现它就在那个下面,这里: