使用laravel路由时,我用这种方式编写链接:
mywebsite.com/category/product
但是要调用ajax,我想改为:
mywebsite.com?author=&article=
对于_POST
然后
mywebsite.com/php/includes/dostuff.php
(以前的链接只是示例)
答案 0 :(得分:1)
如Laravel API文档中所述,您可以执行类似的操作
$query = $request->query();
获取所有url查询($ _GET)项。
来源:https://laravel.com/api/5.3/Illuminate/Http/Request.html#method_query
希望这有帮助
答案 1 :(得分:1)
在进行ajax调用时,你只需要使用普通路由。有很多方法可以解决它,有两种简单的方法:
如果您没有对'/'
页面或路线发出任何其他发布请求,请设置'/'
(主页或根页)的发布路线以瞄准控制器。< / p>
Route::post('/', 'AjaxController@WhatEverMethod');
如果您已经有其他发布请求路由指向('/')
,那么您可以使用if语句查看请求是否为Ajax,如果是,则使用Ajax控制器,否则使用您的普通控制器。
我的第二个简单解决方案是设置一个专用路由来处理您的Ajax调用,例如:
Route::any('/Ajax/', 'AjaxController@index');
public function index(Request $request)
{
if($request->ajax()){
return "Is an ajax call..";
}
return "Is not an ajax call";
}
你应该没有理由轻易解决这个问题,Checkout laracasts,这可能会给你一个良好的开端。