Ajax LARAVEL 419 POST错误
我真的很感激这方面的一些帮助。 我在这个论坛上发布了大量的解决方案,但我无法让它发挥作用。
我的ajax电话是这样的
$(document).ready(function() { $("#company").click(function() { $.ajax({ type: "POST", dataType:'html', url : "/company", success : function (data) { $("#result").html(data); } }); }); });
我通过我的路线呼叫视图
Route::post('/company', 'Ajaxcontroller@loadContent');
和控制器
public function loadContent() { return view('listing.company')->render(); }
我的company.blade.php是
@foreach ($companies as $company) {{$company->name}}
{{$company->streetaddress}} {{$company->postalcode}}
is available on
@endforeach
我收到了这个错误
POST http://127.0.0.1:8234/company 419 (unknown status)
Laravel 419发布错误通常与api.php和令牌授权有关
Laravel为应用程序管理的每个活动用户会话自动生成CSRF“令牌”。 此令牌用于validation经过身份validation的用户是否是实际向应用程序发出请求的用户。
将其添加到您的ajax调用中
$.ajaxSetup({ headers: { 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content') } });
或者您可以在VerifyCSRF令牌中间件中排除某些URI
protected $except = [ 'stripe/*', ];
在您的行动中,首先需要加载公司:
$companies = App\Company::all(); return view('listing.company')->with('companies' => $companies)->render();
这将使公司变量在视图中可用,并且它应该正确呈现HTML。
尝试使用postman chrome扩展来调试您的视图。
您没有提交任何数据! 尝试将此行添加到您的ajax:
data: $('form').serialize(),
确保更改名称以匹配!
您的数据也应该在表单提交function中提交。
您的代码应如下所示:
在laravel中,您可以使用视图渲染。 恩。 $ returnHTML = view(’myview’) – > render(); myview.blade.php包含您的刀片代码