Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/29.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 飞行前请求不';无法通过访问控制检查:它没有HTTP ok状态问题,并且我没有';i don’我不知道为什么,我进口的东西都是对的_Node.js_Angular_Mongodb_Express_Mongoose - Fatal编程技术网

Node.js 飞行前请求不';无法通过访问控制检查:它没有HTTP ok状态问题,并且我没有';i don’我不知道为什么,我进口的东西都是对的

Node.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:

我得到了一个错误,上面写着“对飞行前请求的响应未通过访问控制检查:它没有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:

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的问题,没有在删除中找到。。有没有办法解决这个问题?顺便说一句,这个问题已经解决了,谢谢!这个错误发生在哪里?我没发现它就在那个下面,这里: