asp.net-core-webapi相关内容

使用 Postman 向 Asp.net Core webapi 发送 PATCH 时出错

我有一个模特, 公开课顺序{公共指导 ID { 获取;放;}公共 IEnumerableItemIds { 得到;放;}公共字符串货币 { 获取;放;}} 还有一个存储库, 公共接口 IOrderRepository{IEnumerable得到();订单获取(Guid id);无效添加(订单订单);无效更新(Guid id,订单顺序);//为简单起见,删除了其他 ..
发布时间:2022-01-22 14:33:42 C#/.NET

我不能使用 json 使用 react 向我的 web api 发出 Post 请求

我在 ASP.NET Core 中创建了一个 webapi,我需要使用 React 来使用它,web api 可以正常工作,如果我使用 curl 或 postman 等,它可以正常工作.当我打算使用 React 时,当我尝试使用问题中的 js 对我的 API 发出任何请求时,问题就开始了. 更复杂的是,当我向其他 API 发出请求时,它正常工作,这让我相信问题出在我的 API 上,但正如我所 ..
发布时间:2022-01-20 15:17:21 前端开发

ASP.NET Core 在 Web API 中处理自定义响应/输出格式的方法

我想创建自定义 JSON 格式,它将响应包装在数据中并返回 Content-Type vnd.myapi+json 目前我已经创建了一个像我在控制器中返回的包装类,但如果可以在后台处理它会更好: public class ApiResult{[JsonProperty("数据")]公共 TValue 值 { 获取;放;}[JsonExtensionData]公共字典元 ..
发布时间:2022-01-13 12:47:31 C#/.NET

Asp.Net Core Web API 2.2 控制器不返回完整的 JSON

我的 Asp.Net Core Web API 2.2 项目中有一个 Web API 控制器. 留言板型号: 公共类 MessageBoard{公共长 ID { 获取;放;}公共字符串名称 { 获取;放;}公共字符串描述 { 获取;放;}公共ICollection消息{得到;放;}} 消息模型: 公共类消息{公共长 ID { 获取;放;}公共字符串文本 { 获取;放;}公共字符 ..
发布时间:2022-01-13 12:40:20 C#/.NET

与 ASP.NET Core 中的 FromBody 混淆

我有以下 WEB API 方法,并且有一个带有 Angular 的 SPA 模板: [HttpPost]公共 IActionResult Post([FromBody]MyViewModel 模型) 我认为,基于 this 主题,这里不需要使用 [FromBody] ,因为我想从消息体中读取值,所以不需要覆盖默认行为,但是,如果我不这样做't 使用 [FromBody],来自 Angular ..
发布时间:2022-01-13 12:36:36 C#/.NET

仍登录 MVC 站点,但无法调用 Web API

我有一个 ASP.NET MVC 站点、IdentityServer4 主机和一个 Web API. 当我使用外部提供商 (Facebook) 登录 MVC 站点时,我已正常登录.从 MVC 站点,我也可以正确使用 Web API. 但是,第二天,我仍然登录到 MVC 站点,但是当我尝试访问 Web API 时,我得到一个“未授权异常". 因此,尽管我仍在 MVC 站点中登录,但 ..
发布时间:2022-01-13 12:04:26 C#/.NET

使用 Asp.net 核心创建另一个 Web api 的代理

我正在开发一个 ASP.Net Core Web 应用程序,我需要为另一个(外部)Web 服务创建一种“身份验证代理". 我所说的身份验证代理的意思是,我将通过我的 Web 应用程序的特定路径接收请求,并且必须检查这些请求的标头以获取我之前发布的身份验证令牌,然后重定向所有向外部 Web API 发出具有相同请求字符串/内容的请求,我的应用将通过 HTTP Basic auth 对其进行身份 ..
发布时间:2022-01-13 12:00:33 C#/.NET

如何从控制器返回特定的状态码并且没有内容?

我希望下面的示例控制器返回没有内容的状态代码 418.设置状态码很容易,但似乎需要做一些事情来表示请求的结束.在 ASP.NET Core 之前的 MVC 或 WebForms 中,这可能是对 Response.End() 的调用,但它在 Response.End 的 ASP.NET Core 中如何工作不存在? 公共类 ExampleController : 控制器{[HttpGet][Rou ..
发布时间:2022-01-13 11:59:32 C#/.NET

将依赖注入与 .NET Core 类库 (.NET Standard) 结合使用

我已经浏览了链接: https://docs.microsoft.com/en-us/aspnet/core/mvc/controllers/依赖注入 并了解到我如何使用 Web API 的依赖注入. 正如上面链接中提到的,我可以使用 Startup (Startup.cs) 类在 API 层内进行依赖注入.但是.NET Core 类库如何实现依赖注入.下面是我如何添加类库的屏幕 ..

每个请求的 ASP.NET Core API JSON 序列化程序设置

基于请求中的某些值(标头或 url),我想更改我的 DTO 对象的序列化.为什么?好吧,我已将 [JsonProperty("A")] 应用于我的 DTO,但取决于它是否要使用该属性的客户端(网站或移动应用程序).我开始了 服务.AddMvc().AddJsonOptions(opt =>{#如果调试opt.SerializerSettings.ContractResolver = new No ..
发布时间:2022-01-11 22:20:03 C#/.NET

我可以强制注销或过期 JWT 令牌吗?

目前我们正在使用 JWT 进行身份验证,因此一旦创建了令牌,它就会终身创建,如果我们设置时间过期,令牌就会过期. 有没有办法让令牌过期? 单击注销按钮时,我需要销毁令牌. 我正在使用 ASP.NET Core WebAPI. 解决方案 我认为取消 JWT 是处理注销的最佳方式.Piotr 在他的博客中解释得很好:取消 JWT 令牌 我们将从界面开始: 公共接口 I ..
发布时间:2022-01-10 09:29:24 其他开发

填充 AspNetUserLogins 和 AspNetUserTokens

我尝试了很多来自 Internet 的示例(例如 first、second 等),一切正常,除了表 AspNetUserLogins 和 AspNetUserTokens成功登录和生成令牌后不显示任何数据. 为什么会发生这种情况,我该如何解决? 解决方案 AspNetUserTokens表用于存储外部认证令牌,由SignInManager.UpdateExternalAuthenti ..

如何在控制器方法中使 JWT 令牌授权可选

我在 ASP.NET Core 2 Web 应用程序中使用 JWT 令牌 如果 JWT 令牌失败,我仍然希望调用控制器方法,但 ASP.NET 标识 User 对象将为空.目前,如果身份验证失败,将不会输入控制器方法,因此我无法在该方法中应用逻辑来处理我想以访客身份处理而不是阻止他们的未经身份验证的用户. 我的代码: Startup.cs public void Config ..

Jwt Bearer 和依赖注入

我正在尝试配置我的 Jwt Bearer 颁发者密钥,但在生产中,我通常使用由 KeyManager 包装的 Azure Key Vault.KeyManager 类是在依赖注入中配置的,但是在 ConfigureServices 方法中我不能使用它(显然),但是如果我不能使用它,我就无法检索我的密钥. 我目前的解决方案是建立一个临时服务提供者并使用它,但我认为不是最先进的(我需要创建两个单 ..
发布时间:2022-01-10 09:08:26 C#/.NET

ASP.NET Core JWT 和声明

我对 ASP.NET Core 和 Claims 中的 JWT 身份验证有疑问,因为我不知道我是否正确获取了所有内容. 当我在 ASP.NET 中创建 JWT 令牌时,我添加了一些声明,其中一些可以是自定义的.当带有 JWT 令牌的请求从客户端发送到 API 时会发生什么.User.Claims 如何填写?它是否使用从 JWT 读取的声明? 我想创建一个自定义身份提供程序(不想使用由 ..
发布时间:2022-01-10 09:02:54 其他开发

添加 Authorize 属性时 Web api 核心返回 404

我是 .net 核心的新手,我正在尝试创建实现 jwt 以进行身份​​验证和授权的 web api 核心. 在 Startup 类中我是这样配置的: 公共类启动{公共启动(IConfiguration 配置){配置=配置;}公共 IConfiguration 配置 { 获取;}//这个方法被运行时调用.使用此方法向容器添加服务.公共无效配置服务(IServiceCollection 服务) ..
发布时间:2022-01-10 09:00:18 C#/.NET