php CSRF令牌在使用一段时间后不匹配

1l5u6lss  于 2024-01-05  发布在  PHP
关注(0)|答案(1)|浏览(232)

我得到了这个错误后2天的操作。我的代码:

  1. var unitAjax = $.ajax({
  2. method: 'post',
  3. url: window.location.origin + '/unit/store',
  4. data: {
  5. '_token': '{{csrf_token()}}',
  6. 'unit': $('#unit').val()
  7. },
  8. dataType: 'json'
  9. });
  10. unitAjax.done(function(data) {
  11. // console.log('OK!');
  12. $('#modalCreateUnit').modal('hide');
  13. var date = new Date();
  14. table.row.add([
  15. data.unit[0].id,
  16. data.unit[0].unit,
  17. data.unit[0].created_at,
  18. data.unit[0].updated_at,
  19. "<button class='btn btn-success edit-unit"+data.unit[0].id+"' onclick='clickBtn("+data.unit[0].id+")'><i class='fas fa-edit'></i> {{__('edit')}}</button> <button class='btn btn-danger' onclick=delUnit("+data.unit[0].id +")><i class='fas fa-trash-alt'></i> {{__('delete')}}</button>"
  20. ]).draw( false );
  21. $('#alertSuccess').show();
  22. $('#alertDel').hide();
  23. $('#alertEdit').hide();
  24. });
  25. unitAjax.fail(function (error) {
  26. $('#alertError').show();
  27. $('#nameError').text(error.responseJSON.message);
  28. });

字符串
控制器:

  1. public function store(Request $request) {
  2. $dataUnit = $this->validate(request(), [
  3. 'unit' => 'required'
  4. ]);
  5. $unit = new Unit();
  6. $unit->unit = $request->input('unit');
  7. $unit->save();
  8. $id = Unit::where('unit', $request->unit)->get();
  9. return response(['success' => ['Add Success!'], 'unit' => $id]);
  10. }


这是我获得的错误:[![在这里输入图像描述][1]][1]:https://i.stack.imgur.com/1A10b.png我使用jquery 3.3.1,laravel 5.8.35和php 7.3.9.

9o685dep

9o685dep1#

在启动时设置aSync setup csrf token

  1. $.ajaxSetup({
  2. headers: {
  3. 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
  4. }
  5. });
  6. var unitAjax = $.ajax({
  7. method: 'post',
  8. url: window.location.origin + '/unit/store',
  9. data: {
  10. 'unit': $('#unit').val()
  11. },
  12. dataType: 'json'
  13. });
  14. unitAjax.done(function(data) {
  15. // console.log('OK!');
  16. $('#modalCreateUnit').modal('hide');
  17. var date = new Date();
  18. table.row.add([
  19. data.unit[0].id,
  20. data.unit[0].unit,
  21. data.unit[0].created_at,
  22. data.unit[0].updated_at,
  23. "<button class='btn btn-success edit-unit"+data.unit[0].id+"' onclick='clickBtn("+data.unit[0].id+")'><i class='fas fa-edit'></i> {{__('edit')}}</button> <button class='btn btn-danger' onclick=delUnit("+data.unit[0].id +")><i class='fas fa-trash-alt'></i> {{__('delete')}}</button>"
  24. ]).draw( false );
  25. $('#alertSuccess').show();
  26. $('#alertDel').hide();
  27. $('#alertEdit').hide();
  28. });
  29. unitAjax.fail(function (error) {
  30. $('#alertError').show();
  31. $('#nameError').text(error.responseJSON.message);
  32. });

字符串

展开查看全部

相关问题