asp.net-core-webapi 相关问题

有关不依赖于MVC视图或Razor页面的ASP.NET核心Web API和Web应用程序的问题

ASP.NET Core 8 Web API 未在 iis 中传递 Windows 用户

我有一个 ASP.NET Core Web API。当我在 Visual Studio 中使用 IIS Express 运行它时,Windows 身份验证工作正常。 但是,当我将 API 部署到 IIS 时,它无法使用 Windows 身份验证。我...

回答 1 投票 0

如何在 Kestrel 上运行的 ASP.NET Core 应用程序中与 gMSA 帐户协商身份验证

我有一个 ASP.NET Core Web API,它在使用 Kestrel Web 服务器的本地 AD 环境测试中作为 gMSA(组托管服务帐户)下的 Windows 服务运行。 应用程序使用协商身份验证(

回答 1 投票 0

ASP.NET Core Web Api 发送 Access-Control-Allow-Origin: null CORS header 和 chrome 出错,如何修复?

昨天我设法让我的 API 在我的本地计算机上工作,但是今天(相同的代码)在另一台计算机上,它不起作用,我在控制台上收到此错误: 加载失败http://

回答 3 投票 0

如何设置 Serilog 将请求和响应正文一起记录?

在 ASP.NET Core Web API 中,添加 Microsoft.AspNetCore.HttpLogging 以包含请求和响应非常容易。 在我的启动中,在使用 builder.Build() 构建应用程序之前,我添加以下代码:

回答 1 投票 0

.NET Core 服务需要时间关闭

这是在 .NET Core 中创建的任何服务的普遍问题。我创建了一个新的 SampleService (ASP.NET Core 6 Web API)。我添加了一个控制器(Ping),其中一种方法在 hi 上返回“OK”...

回答 1 投票 0

ASP.NET Core 8 Web API:无法从单例注册作用域服务

在我的 API 中,我使用 AddHostedService 注册了一些服务,这些服务需要注入一些接口,例如: 程序.cs: builder.Services.AddScoped 在我的 API 中,我使用 AddHostedService 注册了一些服务,这些服务需要注入一些接口,例如: Program.cs: builder.Services.AddScoped<IHypervisorRepository, HypervisorRepository>(); builder.Services.AddScoped<IAccountRepository, AccountRepository>(); builder.Services.AddScoped<ICloudStackDbUnitOfWork, CloudStackDbUnitOfWork>(); builder.Services.AddScoped<ICloudStackCoreConnectionFactory, MySqlCloudStackCoreConnectionFactory>(); builder.Services.AddScoped<IJobUtility, JobUtility>(); builder.Services.AddScoped<IVdcUnitOfWork, VdcUnitOfWork>(); builder.Services.AddScoped<IMemoryCache, MemoryCache>(); builder.Services.AddHostedService<CheckDatabaseHealthBackgroundService>(); CheckDatabaseHealthBackgroundService.cs: public sealed class CheckDatabaseHealthBackgroundService : BackgroundService, IDisposable { private readonly IServiceProvider _provider; private readonly IJobUtility _jobUtility; private readonly IVdcUnitOfWork _unitOfWork; private readonly ICloudStackCoreConnectionFactory _connFactory; private readonly IMemoryCache _cache; private readonly ILogger<CheckDatabaseHealthBackgroundService> _logger; public CheckDatabaseHealthBackgroundService( IServiceProvider provider, IJobUtility jobUtility, IVdcUnitOfWork unitOfWork, ICloudStackCoreConnectionFactory connFactory, IMemoryCache cache, ILogger<CheckDatabaseHealthBackgroundService> logger) { _provider = provider; _jobUtility = jobUtility; _unitOfWork = unitOfWork; _connFactory = connFactory; _cache = cache; _logger = logger; } 但是在我启动 API 后,会抛出以下异常: System.InvalidOperationException:验证服务描述符“ServiceType:Microsoft.Extensions.Hosting.IHostedService 生命周期时出错:单例实现类型:CloudStackData.WebAPI.RefreshDiskTypeBackgroundService”:无法使用单例“Microsoft”中的作用域服务“Vdc.Libs.Data.IVdcUnitOfWork” .Extensions.Hosting.IHostedService'. System.InvalidOperationException:无法使用单例“Microsoft.Extensions.Hosting.IHostedService”中的范围服务“Vdc.Libs.Data.IVdcUnitOfWork” 读完这个错误后,我得出结论,我应该将 CheckDatabaseHealthBackgroundService 所需的服务添加为单例,而不是限定范围,所以我尝试了: Program.cs: builder.Services.AddScoped<IHypervisorRepository, HypervisorRepository>(); builder.Services.AddScoped<IAccountRepository, AccountRepository>(); builder.Services.AddScoped<ICloudStackDbUnitOfWork, CloudStackDbUnitOfWork>(); builder.Services.AddScoped<ICloudStackCoreConnectionFactory, MySqlCloudStackCoreConnectionFactory>(); builder.Services.AddSingleton<IJobUtility, JobUtility>(); builder.Services.AddSingleton<IVdcUnitOfWork, VdcUnitOfWork>(); builder.Services.AddSingleton<IMemoryCache, MemoryCache>(); builder.Services.AddHostedService<CheckDatabaseHealthBackgroundService>(); 现在抛出的异常是: System.InvalidOperationException:验证服务描述符“ServiceType:Microsoft.Extensions.Hosting.IHostedService 生命周期时出错:单例实现类型:CloudStackData.WebAPI.RefreshDiskTypeBackgroundService”:无法使用单例“Vdc”中的作用域服务“Vdc.Libs.Data.DbContextWrite” .Libs.Data.IVdcUnitOfWork'. 我开始陷入困境。 VdcUnitOfWork是我们创建的自定义类: public sealed class VdcUnitOfWork : EFDbUnitOfWork<DbContextWrite>, IVdcUnitOfWork, IUnitOfWork, IDisposable, IDbContextWrapper { public VdcUnitOfWork(DbContextWrite dbContext) : base(dbContext) { } } 并且 DbContextWrite 是另一个自定义类: public abstract class DbContextWrite : DbContext { protected DbContextWrite([NotNull] DbContextOptions options) : base(options) { } } 事实是,在使用 AddHostedService 添加托管服务后,我无法再运行 API(我有四个托管服务,但为了简化而只放了一个)。 有什么帮助吗? 要在 HostedService(单例)中使用作用域服务,您需要注入 IServiceScopeFactory(使用 .NET 8.0 中的主构造函数): public sealed class CheckDatabaseHealthBackgroundService (IServiceScopeFactory scopeFactory) : BackgroundService { protected override async Task ExecuteAsync(CancellationToken stoppingToken) { // get scoped services: using var scope = scopeFactory.CreateScope(); var jobUtility = scope.ServiceProvider.GetService<IJobUtility>(); var unitOfWork = scope.ServiceProvider.GetService<IVdcUnitOfWork>(); var memoryCache = scope.ServiceProvider.GetService<IMemoryCache>(); // Use services here } }

回答 1 投票 0

我们如何根据一些ID以及电子邮件地址和密码生成访问令牌

目前我正在执行一项任务,需要根据用户凭据(电子邮件地址和密码)和一些 Id(例如: subscriptionId )为用户生成访问令牌。根据我的研究,我...

回答 1 投票 0

在 ASP.NET Core Web API 中使用中间件进行异常处理、身份验证和错误日志记录的最佳实践

我正在开发一个 ASP.NET Core Web API 项目,我正在尝试使用中间件实现一些全局功能。具体来说,我想处理以下内容: 全局异常处理:

回答 1 投票 0

SPA 集成问题:Next.js 和 ASP.NET Core Web API

我正在尝试将 Next.js (v14) 前端与 ASP.NET Core 8 Web API 后端集成。当我使用 app.UseSpa 时,我的 API 不起作用。 但是,当我注释掉 app.UseSpa 时,你可以在 app.Ru 之前看到...

回答 1 投票 0

为什么 ASP.NET Core Web API 在请求标头中传递不记名令牌时无法识别用户何时登录?

我使用 AspNetCore.Identity.MongoDbCore 包设置了一个基本的 ASP.NET Core 8 Web API 控制器来连接到 MongoDB 集合,并添加了 /api/user/{username} 端点。 程序.cs: 使用麦克风...

回答 1 投票 0

保护 JWT 令牌免受攻击者攻击

我在 ASP.Net Core Web API 应用程序中使用 JWT。对于 JWT,我需要一个令牌,我当前将其存储在 appsettings.json 中。它看起来像这样: “Jwt”:{ “令牌”:“

回答 1 投票 0

如何处理 ASP.NET Web API 中 DTO 中的 Id 属性

让我们考虑一个简单的 UserDTO: 公共记录 UserDTO(string Id, string Username); 这意味着在 Swagger UI 中,对于 POST 请求,将询问 Id 和 Username,但不会使用 Id。

回答 2 投票 0

如何本地化Json反序列化的异常消息?请求接口时传递了无效参数?

我的开发环境是.Net7 WebApi(开箱即用) 下面是相关代码。 DataAnnotations 我已经实现了本地化。 使用 System.ComponentModel.DataAnnotations; 命名空间 WebAp...

回答 2 投票 0

如何将序列化的 JSON 负载传递到 ASP.NET Core Web API 控制器

此 API 端点旨在接收序列化的 JSON 对象并将其传递给底层报告引擎。 使用 Microsoft.AspNetCore.Mvc; 使用Newtonsoft.Json.Linq; 命名空间服务器。

回答 1 投票 0

持续存在的 CORS 问题(Vue 3 / Axios + ASP.NET Core Web API(后端))

我很困惑。当运行我的 .net core 服务器然后将 vue proj 加载到与另一个文件相同的文件中时,我取得了部分成功。当我开始测试 axios/fetch 请求有什么问题时...

回答 2 投票 0

Json 在运行时忽略属性

我有一个 Web 服务,它根据从客户端收到的请求返回对象。可以说,基于用户权限,我想向客户端隐藏一些属性值。 我有一个解决方案:...

回答 4 投票 0

如何在 .NET Core 3.1.x 上写入 HttpContext.Response.Body

我一直在尝试编写或设置 HttpContext.Response.Body 但无济于事。我发现的大多数示例都使用 Body.WriteAsync,但参数与示例不同。我试过了

回答 3 投票 0

.NET 中使用 SSL 的 Docker 容器之间的连接被拒绝

我有两个 C# ASP.NET Core 8 Web API 项目,名为 FrontEnd 和 DataLayer。 DataLayer 连接到数据库,FrontEnds 连接到 DataLayer。 项目和数据库都在 Docker 中...

回答 1 投票 0

Minimal API Swagger 文档在发布到 IIS 时不断返回 404

我有一个 ASP.NET Core 6.0 Minimal API。当我从 VS 在 IIS Express 中运行它时,Swagger 工作得很好,但我想将它发布到我的设备上的 IIS,这样我就不必总是从 VS 运行它。 问题...

回答 1 投票 0

Azure 表存储在本地工作,但不能从 Azure Web 应用程序工作

我的后端服务是 ASP.NET Core 6 Web API。我正在使用表存储来维护 API 日志,我有一个日志记录中间件,通常在 API 请求时将日志存储在 Azure 表存储中...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.