首页 > 解决方案 > 即使我在元标记中提到它,也找不到 CSRF_TOKEN

问题描述

我正在尝试reactjslaravel. 所以我所做的是,通过使用一些命令将我的 js 从vue更改为。react然后我Example.js/resources/js/components. 然后我将它添加到app.js

require('./bootstrap');

require('./components/Example');

我的Example.js

import React, { Component } from 'react';
import ReactDOM from 'react-dom';

export default class Example extends Component {
    render() {
        return (
            <div className="container">
                <div className="row justify-content-center">
                    <div className="col-md-8">
                        <div className="card">
                            <div className="card-header">Example Component</div>

                            <div className="card-body">I'm an example component!</div>
                        </div>
                    </div>
                </div>
            </div>
        );
    }
}

if (document.getElementById('example')) {
    ReactDOM.render(<Example />, document.getElementById('example'));
}

然后我Example.js在刀片文件中添加了一个组件。

<meta name="csrf-token" content="{{ csrf_token() }}">
<div class = "content">
    <div id = "Example" class = "title m-b-d">
    </div>
</div>
<script type = "text/javascript" src = "js/app.js"></script>

但我无法Example.js在刀片文件中获取组件。在我的控制台中,我收到此错误

未找到 CSRF 令牌:https ://laravel.com/docs/csrf#csrf-x-csrf-token

我在这里想念什么?

标签: javascriptphpreactjslaravel

解决方案


此错误可能是由bootstrap.js(不是 laravel)在标头中找不到正确的元标记引起的。将您的元标记(带有 csrf 令牌)从<body>to移动到<head>- 这应该可以解决问题。


推荐阅读