【问题标题】:Laravel 5.2 ajax returns 500 Internal Server ErrorLaravel 5.2 ajax 返回 500 内部服务器错误
【发布时间】:2016-06-19 09:27:26
【问题描述】:

我的问题已在此处提出并得到解答: ajax post in laravel 5 return error 500 (Internal Server Error)
但问题对我来说仍然存在。

//master.blade.php
<!DOCTYPE html>
<html>
<head>
...
<meta name="csrf-token" content="{{ csrf_token() }}">
...
</head>

并且create继承admin继承master

//create.blade.php
@extends('admin')

@section('head_scripts')
<script>
    $(function(){
        $.ajaxSetup({
            headers: {
                'X-CSRF-TOKEN': $('[name="_token"]').val()
            }
        });
        $('#country_id').change(function(){
            $('#province_id').find('option').remove().end();
            $('#province_id').attr('disabled', true);
            $('#city_id').find('option').remove().end();
            $('#city_id').attr('disabled', true);
            var cid=$(this).val();
            var params={"type":1, "country_id":cid};
            var paramsString=JSON.stringify(params);
            console.log(paramsString);
            $.ajax({
                url:'/company/ajax',
                type:'POST',
                data:{json: paramsString},
                dataType:'json',
                success:function(result){
                    console.log(result);
                    $('#provinceSelectContainer').html(result);
                }
            });
        });
    });

在控制器中:

public function ajax(string $params){
    if(!$params) return null;
    $params=json_decode($params);
    return ($params);
}

还有路线:

Route::group(['middleware' => ['auth:api']], function() {
    Route::post('/company/ajax', 'CompanyController@ajax');
});

有什么想法吗?

【问题讨论】:

  • 能否请您提供相同的控制器方法?
  • 我在问题中添加了控制器代码

标签: php ajax laravel-5 internal-server-error


【解决方案1】:

在 Laravel 5.2 中,中间件有 web、api 和 auth。 如果你想使用 ajax 发送数据,你将使用带有令牌的 api 中间件。 你可以看到这个参考:https://mattstauffer.co/blog/multiple-authentication-guard-drivers-including-api-in-laravel-5-2

Route::group(['middleware' => ['auth:api']], function () {        
    Route::post('api', someController@indexAjax');
});

【讨论】:

  • 我把我的ajax路由放在这里了,但是错误依然存在
猜你喜欢
  • 2023-03-04
  • 2016-09-16
  • 2019-11-12
  • 2016-08-20
  • 2023-03-19
  • 1970-01-01
  • 2019-06-05
  • 1970-01-01
  • 2017-04-12
相关资源
最近更新 更多