Ядро ASP.Net с токеном React Antiforgery не работаетC#

Место общения программистов C#
Ответить
Anonymous
 Ядро ASP.Net с токеном React Antiforgery не работает

Сообщение Anonymous »


Я пытаюсь разработать приложение с использованием ASP.NET Core 7 с React, и мне нужно реализовать защиту от подделки для всех запросов. Я проводил исследования в Интернете в течение нескольких дней и экспериментировал с различными решениями; однако я до сих пор не знаю, как решить эту проблему.

Ниже приведен мой код, и я готов ответить на любые дополнительные вопросы.

Program.CS

builder.Services.AddAntiforgery( { options.Cookie.Name = "X-XSRF-TOKEN"; options.Header = "X-XSRF-TOKEN"; }); Контроллер

[Маршрут("/Test2")] [ВалидатеАнтиФоржериТокен] [HttpPost] общедоступный PostResponse Test2 (PostRequest pr) { вернуть RunVehCheck(pr); } React (.js)
const getCSRFToken = async () => { const ответ = ожидание выборки("https://localhost:7277/Test2", { метод: «ПОЛУЧИТЬ» }); const csrfToken = ожидайте ответа.json(); вернуть csrfToken; } useEffect(() => { получитьCSRFToken(); }, []); const handleSubmit = async (e) => { е.preventDefault() выборка("https://localhost:7277/Test2", { метод: «ПОСТ», заголовки: { «Тип контента»: «приложение/json», «X-XSRF-TOKEN»: getCSRFToken }, тело: JSON.stringify({ «vehicleReg»: inputValue.current.value }) }) .then((res) => { если (res.status === 200) { вернуть res.json() } еще { throw Error("Ошибка при публикации данных"); } }) .then((res) => { console.log("Успешно отправлено", res) }) .catch((er) => { console.log("Ошибка получения данных", э) }) }
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»