我需要使用我的API删除一些实体,创建我的控制器,我的方法和路由。它们工作正常,所有的get和put / patch方法均能正常工作,但是使用我拥有的Angular应用程序,我删除了该错误并抛出了错误,这是错误的地方:
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');
有人知道为什么它不起作用吗?
编辑:
这是我的路线(是的,方法在好的控制器中):
答案 0 :(得分:1)
发布到“删除” URL时,请确保发布请求中包含以下数据:
_method=delete
这就像一个输入字段,例如:
<input type="hidden" name="_method" value="delete">
答案 1 :(得分:0)
答案 2 :(得分:0)
不允许的方法是HTTPStatus代码405,它通常会转换为缺少与该端点匹配的HTTPVerb
编辑:另外,选中this
例如
所有这些都应该意味着不同的事情,并且做不同的事情。 如果您向最后一个网址发出请求,但该网址未注册(在您的路线文件或放置它们的任何位置),则返回的错误是因为它与名称匹配但与动词不匹配
POST url.com/user
GET url.com/user
PUT url.com/user
PATCH url.com/user
DELETE url.com/user