这是控制器的示例代码和请求或请求的正常处理(不是 AJAX)。
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Routing\Controller;
class UserController extends Controller
{
/**
* Store a new user.
*
* @param Request $request
* @return Response
*/
public function store(Request $request)
{
$name = $request->input('name');
//
}
}
我应该怎么做才能使它也适用于函数中的 AJAX 请求store()
?
如果我创建另一个函数storeAjax()
,我可以将它包含在 routes.php 中(分配了一个新路由)并且它可以工作,但这不是一个好习惯,因为我有 2 条路由,并且两个请求必须相同。
也许这可以帮助你:
至于 ,
Routes.php
无需修改,您在 JS 中所做的是请求类型GET
:你处理请求,我希望它对你有帮助。
使用以下示例创建更强大的控制器功能。
-
AJAX 请求示例:
创建一个指向控制器的 Store 方法的路由,它将同时为来自表单的请求和 AJAX 请求提供服务:
无需实现其他方法。
如果它对您不起作用,可能是因为 Laravel 5 出于安全原因在所有 POST、PUT 和 DELETE 请求中都包含 CSRF 令牌验证。您必须在请求中包含此令牌。
您可以在官方文档中看到包含此令牌的不同方法:http: //laravel.com/docs/5.1/routing#csrf-protection
你可以试试这个