Как написать правильный Startup.cs для моего веб-приложения ⇐ C#
-
Anonymous
Как написать правильный Startup.cs для моего веб-приложения
I'm relatively new to building web applications and could use some assistance. I've developed a C# backend using the ASP.NET Web API framework in Visual Studio, along with a simple frontend using JavaScript and HTML.
Currently, my backend works fine using Swagger, but I'm struggling to connect the frontend to the backend and utilize it instead of Swagger. I've tried configuring my Startup.cs with the help of online resources and ChatGPT, but it's not working as expected.
JavaScript File:
let firstName = document.getElementById("firstNameInput"); let lastName = document.getElementById("lastNameInput"); let button = document.getElementById("button"); let output = document.getElementById("output"); button.onclick = function () { let user = { Vorname: firstName.value, Nachname: lastName.value }; fetch("https://localhost:7130/User/GenerateUser", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify(user) }) .then(response => console.log(response)) .catch(error => console.log(error)); }; Backend Controller:
using Microsoft.AspNetCore.Mvc; using TestBackendFrontend.Model; using TestBackendFrontend.Service; namespace TestBackendFrontend.Controllers { [ApiController] [Route("[controller]")] public class UserController : ControllerBase { private readonly UserService _userService; public UserController(UserService userService) { this._userService = userService; } [HttpPost("GenerateUser")] public IActionResult GenerateFullUser([FromBody]UserModel user) { _userService.CreateUserName(user); return Ok(); } } } Startup.cs:
using TestBackendFrontend.Service; var builder = WebApplication.CreateBuilder(args); // Add services to the container. builder.Services.AddControllers(); builder.Services.AddSingleton(); builder.Services.AddCors(options => { options.AddDefaultPolicy(builder => builder .AllowAnyOrigin() .AllowAnyMethod() .AllowAnyHeader()); }); builder.Services.AddEndpointsApiExplorer(); builder.Services.AddSwaggerGen(); var app = builder.Build(); // Configure the HTTP request pipeline. if (app.Environment.IsDevelopment()) { app.UseSwagger(); app.UseSwaggerUI(); } app.UseHttpsRedirection(); app.UseCors(); app.UseAuthorization(); app.MapControllers(); app.Run(); Thanks in advance for your help!
Источник: https://stackoverflow.com/questions/780 ... pplication
I'm relatively new to building web applications and could use some assistance. I've developed a C# backend using the ASP.NET Web API framework in Visual Studio, along with a simple frontend using JavaScript and HTML.
Currently, my backend works fine using Swagger, but I'm struggling to connect the frontend to the backend and utilize it instead of Swagger. I've tried configuring my Startup.cs with the help of online resources and ChatGPT, but it's not working as expected.
JavaScript File:
let firstName = document.getElementById("firstNameInput"); let lastName = document.getElementById("lastNameInput"); let button = document.getElementById("button"); let output = document.getElementById("output"); button.onclick = function () { let user = { Vorname: firstName.value, Nachname: lastName.value }; fetch("https://localhost:7130/User/GenerateUser", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify(user) }) .then(response => console.log(response)) .catch(error => console.log(error)); }; Backend Controller:
using Microsoft.AspNetCore.Mvc; using TestBackendFrontend.Model; using TestBackendFrontend.Service; namespace TestBackendFrontend.Controllers { [ApiController] [Route("[controller]")] public class UserController : ControllerBase { private readonly UserService _userService; public UserController(UserService userService) { this._userService = userService; } [HttpPost("GenerateUser")] public IActionResult GenerateFullUser([FromBody]UserModel user) { _userService.CreateUserName(user); return Ok(); } } } Startup.cs:
using TestBackendFrontend.Service; var builder = WebApplication.CreateBuilder(args); // Add services to the container. builder.Services.AddControllers(); builder.Services.AddSingleton(); builder.Services.AddCors(options => { options.AddDefaultPolicy(builder => builder .AllowAnyOrigin() .AllowAnyMethod() .AllowAnyHeader()); }); builder.Services.AddEndpointsApiExplorer(); builder.Services.AddSwaggerGen(); var app = builder.Build(); // Configure the HTTP request pipeline. if (app.Environment.IsDevelopment()) { app.UseSwagger(); app.UseSwaggerUI(); } app.UseHttpsRedirection(); app.UseCors(); app.UseAuthorization(); app.MapControllers(); app.Run(); Thanks in advance for your help!
Источник: https://stackoverflow.com/questions/780 ... pplication
Мобильная версия