Форум программистов, компьютерный форум, киберфорум
C#: ASP.NET Core
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.93/15: Рейтинг темы: голосов - 15, средняя оценка - 4.93
0 / 0 / 0
Регистрация: 10.12.2022
Сообщений: 31
.NET 6

ASP .NET Core + React Ошибка 404 при запросе

24.01.2023, 20:45. Показов 4066. Ответов 40

Студворк — интернет-сервис помощи студентам
Здравствуйте!
Есть следующая проблема: в приложении на ASP + React не получается построить API, при любом запросе - ошибка 404. Пробовал использовать роутинг на атрибутах - эффект тот же.
Так же пробовал добавить свой контроллер к дефолтному шаблону ASP + React, итог: стандартный контроллер WeatherForecast работает, мой (RegistrationController) - нет.
Если создавать MVC проект без реакта - проблем нет, контроллер работает.
Огромные подозрения падают на прокси SPA, вернее на его конфигурацию, но инфу по данному вопросу найти не смог (да и вообще не очень понял зачем он нужен).
Заранее всем спасибо, кидание тапками и ссылками приветствуется.

Program.cs
Кликните здесь для просмотра всего текста

C#
1
2
3
4
5
6
7
8
9
10
var builder = WebApplication.CreateBuilder(args);
builder.Services.AddControllers();
 
var app = builder.Build();
app.UseStaticFiles();
app.MapControllerRoute(
    name: "default",
    pattern: "{controller}/{action=Index}"
);
app.Run();


RegistrationController.cs
Кликните здесь для просмотра всего текста

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
using Microsoft.AspNetCore.Mvc;
 
namespace Test.Controllers
{
    public class RegistrationController : ControllerBase
    {
        [HttpPost]
        public string Index()
        {
            return "Welcome to the club, buddy *slaps*";
        }
    }
}


index.js
Кликните здесь для просмотра всего текста

JavaScript
1
2
3
4
5
6
7
import React from 'react';
import ReactDOM from 'react-dom';
import Registration from "./components/registration";
import {onLoad} from "./fetch";
 
document.addEventListener("DOMContentLoaded", onLoad);
ReactDOM.render(<Registration />, document.getElementById('root'));


fetch.js
Кликните здесь для просмотра всего текста

JavaScript
1
2
3
4
5
6
async function onLoad() {
    let v = await fetch("Registration/Index", {method: "post"});
    console.log(await v.text);
}
 
export {onLoad};


setupProxy.js (как я понял, именно здесь настраивается прокси)
Кликните здесь для просмотра всего текста

JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
const { createProxyMiddleware } = require('http-proxy-middleware');
const { env } = require('process');
 
const target = env.ASPNETCORE_HTTPS_PORT ? `https://localhost:${env.ASPNETCORE_HTTPS_PORT}` :
  env.ASPNETCORE_URLS ? env.ASPNETCORE_URLS.split(';')[0] : 'http://localhost:13479';
 
const context =  [
    "/weatherforecast",
];
 
module.exports = function(app) {
  const appProxy = createProxyMiddleware(context, {
    target: target,
    secure: false,
    headers: {
      Connection: 'Keep-Alive'
    }
  });
 
  app.use(appProxy);
};
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
24.01.2023, 20:45
Ответы с готовыми решениями:

React с asp.net core
Никак не могу отобразить из базы данных таблицу Users. Можете сказать в чем причину? public class User { public int Id {...

ASP.NET Core + React.js
В VS есть шаблон проекта ASP.NET Core + React.js, макет на первой картинке. Меню слева сформировано с помощью NavBar. &lt;Navbar...

React.js и ASP.NET CORE
Вопрос в следующем! Где можно найти уроки по ASP.NET Core в связки с React.js То есть на подобие создания простого переложения, но...

40
77 / 50 / 29
Регистрация: 21.10.2022
Сообщений: 114
27.01.2023, 21:04
Лучший ответ Сообщение было отмечено locki131 как решение

Решение

Студворк — интернет-сервис помощи студентам
Цитата Сообщение от locki131 Посмотреть сообщение
Да, я его выпилил. Запросы кидал через postman, поэтому даже не стал заполнять этот App.
Ну так добавил строку в package.json
JavaScript
1
 "proxy": "http://localhost:5136",
и все заработало. И гет и пост.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
27.01.2023, 21:04

FullStack React + Asp Net Core
Добрый день! Подскажите пожалуйста как происходит грубо говоря, объединение двух проектов, как правильнее сказать не знаю, React js и Asp...

Использование React в ASP .NET Core
Здравствуйте! Возникла проблема в подключении React для использования в связке с ASP .NET Core. Гуглом проблема не решилась. Пробовал...

React.JS + Redux в проекте ASP.NET Core
Всем привет. Хочу начать изучать фреймворк для FrontEnd и столкнулся с проблемой уже при старте. Ранее использовал React.JS, но без Redux...

Возможно ли развернуть ASP.NET Core Web API + React JS на виртуальном хостинге?
Сейчас у меня VPS. А возможно ли развернуть на обычном виртуальном хостинге? И будет ли это проще?

Ошибка при запуске Asp.Net Core сайта
Здравствуйте! Возникла проблема при запуске Asp.Net Core приложения в среде Linux, Среда разработки VS17, ОС Win10 Creators Update. ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
41
Ответ Создать тему
Новые блоги и статьи
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства. Родственных связей существует 8 ступеней, такие как: p - отец P - мать q - муж Q - жена b - брат B - сестра s - сын S - дочь
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире. Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С. Задача: Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
Как ИИ начал спорить и врать (возможно почуяв опасность для себя от индустрии - уход от электроники).
Hrethgir 04.08.2026
Недельный диалог, на фоне событий с НПЗ. Да, из спирта можно получать бензин, и это не сложно. Но потом в схеме я решил избавиться от насоса, при этом полностью сделав контроль подачи спирта в. . .
Термопринтер QR701
Argus19 03.08.2026
Термопринтер QR701 Купил два термопринтера QR701. На сэлф-тесте написано: Language: PC936 (GB18030). Что означает, что принтеры могут печатать только латиницу и китайские иероглифы. Так же. . .
Создание формы заимствованного документа
Maks 03.08.2026
Задача: Необходимо создать собственную форму заимствованного документа. На форме должен быть реквизит "Покупатель", а также табличная часть со следующими реквизитами: - Расчетный счет покупателя. . .
Задача предоставления скидок покупателям
Maks 03.08.2026
Задача: В документе "Продажи" необходимо реализовать функционал предоставления скидок покупателям. Скидка должна автоматически рассчитываться и подставляться в соответствующее поле при выборе. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru