Laravel API,如何接受DELETE方法

问题描述 投票:0回答:3

我需要使用我的API删除一些实体,我创建我的控制器,我的方法,路线。它们工作正常,所有的get和put / patch方法都可以工作,但是我使用了删除和错误抛出我的Angular应用程序消耗了这个api,这里是错误:

DELETE (Method Not Allowed)

在我的api路由文件中,我设置了这个:

header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Methods:  POST, GET, OPTIONS, PUT, PATCH, DELETE');
header('Access-Control-Allow-Headers:  Content-Type, X-Auth-Token, Origin, Authorization, X-HTTP-Method-Override');

任何人都知道它为什么不起作用?

编辑:

这是我的路线(是的,方法在好控制器中):

enter image description here

laravel api http-delete
3个回答
2
投票

当您发布到删除网址时,请确保您的帖子请求中包含以下数据:

_method=delete

这就像输入字段,例如:

<input type="hidden" name="_method" value="delete">

0
投票

0
投票

不允许的方法是HTTP状态代码405,它通常转换为缺少HTTP动词匹配该端点

编辑:另外,检查this

EG

所有这些应该意味着不同的东西,做不同的事情。如果您对最后一个网址发出请求但是网址没有注册(在你的路线文件或你放置它们的任何地方),那么这就是它返回的错误,因为它与名称匹配但不匹配动词

POST   url.com/user

GET    url.com/user

PUT    url.com/user

PATCH  url.com/user

DELETE url.com/user
© www.soinside.com 2019 - 2024. All rights reserved.