Laravel RESTful 返回 301 状态
Posted
技术标签:
【中文标题】Laravel RESTful 返回 301 状态【英文标题】:Laravel RESTful returning 301 state 【发布时间】:2014-12-20 21:11:01 【问题描述】:伙伴们, 我正在开发一个 Backbone/Laravel 应用程序。 当我尝试向某个资源发送 POST 请求时,它会返回 301 状态而没有响应,无论在控制器上我正在打印“hello world”,以检查它是否达到了这一点。
这里有一些代码...
public function store()
//
return 'hello world';
这是 routes.php
Route::group(array('before' => 'auth'), function()
Route::get('/', 'SitesController@index');
Route::resource('rooms', 'RoomsController');
);
所以,当我向
发出 POST 请求时rooms
有一些信息要保存,它让我返回 301 状态,根本没有任何响应。
知道我做错了什么吗?
提前致谢!
【问题讨论】:
【参考方案1】:由于某种原因,在Laravel
中发布到“图像”,即使没有尾随“/”也会给我一个301 Moved Permanently
HTTP 响应。
我的公共目录中没有“图像”文件夹,并且仍然不明白为什么会发生重定向。
将请求更改为“foo”似乎可以正常工作。
因此,如果您是因为试图安静地存储图像而找到此页面,请尝试以下操作:
Route::resource('api/image', 'ImageController');
【讨论】:
【参考方案2】:(添加这个答案以防有人和我有同样的问题)
就我而言,我有一个资源videos
,它给出了完全相同的问题。原因是我在服务器 /videos/
上还有一个目录(其中包含文件),服务器在让 Laravel 将其定向到控制器之前试图将其指向我。
【讨论】:
【参考方案3】:解决了!
在骨干收集配置中,我的 url 参数末尾带有“/”。
rooms/
删除了那个斜线,现在它可以正常工作了。 希望有人觉得这有帮助
【讨论】:
刚刚拯救了我的一天以上是关于Laravel RESTful 返回 301 状态的主要内容,如果未能解决你的问题,请参考以下文章
如何使用中间件来授权我的 laravel Restful API
从 HttpWebRequest 和 HttpWebResponse 获取 Http 状态码(200、301、404 等)