为什么我的路线返回500错误?

时间:2017-02-06 09:06:29

标签: php laravel vue.js

我正在尝试编写我的第一个Vue组件并将其发布到我的Laravel后端。对于某些共振,帖子返回500错误。为什么是这样?是的,csrf令牌是发送的标头的一部分。

VUE COMPONENT:

<template>
    <form v-on:submit.prevent="letsTalk">
        <div class="input-group">

            <input type="text" class="form-control" v-model="message" placeholder="Type here my friend..." ref="messageInput" autofocus>
            <span class="input-group-btn">
                <button class="btn btn-primary" type="submit">Send</button>
            </span>
        </div>
    </form>
</template>

<script>
    export default {
        data: function () {
            return {
                message: 'joel',
                messageInput: []
            }
        },
        created(){

        },
        methods: {
            letsTalk: function () {
                this.$refs.messageInput.focus()
                this.message = ''
                this.success = function(m) {
                    console.log('success', m)
                }
                this.error = function(m) {
                    console.log('error', m)
                }

                this.$http.post( '/api/messages', [this.message])
                    .then(this.success, this.error);

            }
        }
    }
</script>

途径:     

    Route::post('/api/messages', 'Messages@send');

CONTROLLER     

    namespace App\Http\Controllers;

    use Illuminate\Http\Request;
    use Log;

    class Messages extends Controller
    {
        public function send() {
            return json_encode('this works')
        }
    }

1 个答案:

答案 0 :(得分:1)

您应该在浏览器developer console的“电子邮件”标签下查看,以便查看发生的情况或查看日志。

如果这是您的复制和粘贴代码,那么您在json_encoded行的末尾错过了一个分号,应该是:

return json_encode('this works');

如果您在撰写javascriptjavascript之间翻转,尝试将分号括在php中总是一个好主意,因为php需要semi-colon,如果你不习惯添加它们,很容易错过它们。