axios.post 出现 500 错误

axios.post get 500 error

我正在尝试使用 laravel 5.4 和 vue 2.0 创建一个网站聊天应用程序 我遵循了本教程 https://www.youtube.com/watch?v=8aTfMHg3V1Q 并且一切正常,直到我尝试坚持使用 axios.post

发送的消息

我的web.php:

Route::group(['prefix' => 'profile/{username}/you'], function()
{
Route::post('/privatechat/{id}', function(){
        $user = Auth::user();

        $user->send()->create([
            'chat_room'     =>  request()->segment(5),
            'message'       =>  request()->get('message'),
            'sender_id'     =>  Auth::user()->id,
            'receiver_id'   =>  request()->input('receiver')
        ]);

        return ['status' => 'OK'];
    })->middleware('auth');
 });

还有我的 vue:

var url = location.href + '/' + $(this).val();
const app = new Vue({
                el: '#app',
                data: {
                    messages: [],
                    sendClass: 'chat-send'
                    //Điều kiện
                },
                methods: {
                    addMessage(message) {
                        this.messages.push(message);

                        axios.post(url, message)
                        .then(function (response) {
                            alert('Complete! Thanks for your message!');
                        })
                        .catch(function (error) {
                            console.log(error);
                        });
                    }
                },
                mounted() {
                    var u = url;
                    axios.get(u).then(response => {
                        //console.log(response);
                        this.messages = response.data;
                    });
                }
            });

当我按回车键发送消息时,chrome 控制台中出现了这个错误:

POST 500 (Internal Server Error)
dispatchXhrRequest @ app.js:11154
xhrAdapter @ app.js:10991
dispatchRequest @ app.js:11633

我的代码哪里错了?

我使用 laravel-log-viewer 并看到这个:

PDOException: SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '1' for key 'PRIMARY' 
in /home/vagrant/website/hgc/vendor/laravel/framework/src/Illuminate/Database/Connection.php:449

您正在创建新聊天(新条目),如果我没记错的话,您可以不用发送方法吗?只是 Chat::create... 因为您首先检索已经具有 ID 的聊天,然后插入具有已使用 ID 的相同聊天是行不通的。