CSRF_TOKEN не найден, даже я упоминал об этом в метатеге - PullRequest
1 голос
/ 10 октября 2019

Я пытаюсь интегрировать reactjs с laravel. Поэтому я изменил свой js с vue на react с помощью некоторых команд. Затем я добавил Example.js файл под /resources/js/components. Затем я добавил его в app.js

require('./bootstrap');

require('./components/Example');

my 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

Чего мне здесь не хватает?

1 Ответ

1 голос
/ 10 октября 2019

Эта ошибка вызвана, вероятно, bootstrap.js (не laravel), который не может найти правильный метатег в заголовке. Переместите ваш метатег (с токеном csrf) с <body> на <head> - это должно решить проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...