首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在.Net Core2.0 WebAPI控制器中获取当前http上下文用户

在.Net Core2.0 WebAPI控制器中获取当前HTTP上下文用户,可以使用以下方法:

  1. 使用HttpContext对象:
  2. 使用HttpContext对象:
  3. 通过HttpContext.User可以获取当前HTTP上下文中的用户信息。
  4. 使用UserManager:
  5. 使用UserManager:
  6. 通过注入UserManager<IdentityUser>,可以使用GetUserAsync方法获取当前HTTP上下文中的用户信息。
  7. 使用ClaimsPrincipal:
  8. 使用ClaimsPrincipal:
  9. 通过User.FindFirst方法可以获取当前HTTP上下文中的用户信息。

以上是获取当前HTTP上下文用户的几种常见方法,具体使用哪种方法取决于你的项目架构和需求。在实际应用中,可以根据具体情况选择适合的方法来获取当前HTTP上下文用户。

关于.Net Core2.0 WebAPI控制器的更多信息,你可以参考腾讯云的产品介绍页面:腾讯云云服务器

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Asp.Net WebApi核心对象解析(一)

.NET的体系的分布式技术主要有webservice,.net remoting,MSMQ,WCF等等,但是今天介绍的是Asp.Net WebApi,对于Asp.Net WebApi技术,估计很多人都不会陌生...ASP.NET Web API,一个控制器是处理HTTP请求的类。控制器的公共方法被称为动作方法或简单的动作。当Web API框架接收到一个请求,它请求路由到一个动作。...WebAPI路由时,已尽量注意与AspNet Mvc的路由发生冲突,这一点ASP.NET Web API做了一个防范。     ...ASP.NET Web API如果需要创建控制器,只需要实现IHttpController接口即可,我们看一下IHttpController接口的实现代码:    //表示 HTTP 控制器...//参数:controllerContext:测试控制器当前上下文。cancellationToken:取消操作的通知。 //返回结果:控制器

4.4K70

Asp.Net WebApi核心对象解析(二)

一.WebApi处理架构:     我们在学习Asp.Net WebApi时,应该对Asp.Net WebApi的内部运行机制有一个大致的了解,很多人说了解这些基本原理的意义不大,实际开发应用不到而且还浪费时间...二.WebApi托管方式解析:     Asp.Net Web Api的托管方式有三种,接下来我们来大致了解一下这三种托管方式。        ...(一个owin兼容的服务器上建立一个webapi层)      使用web托管时,所使用的是ASP.NET的管道和路由功能,将HTTP请求转发到一个新的ASP.NET处理程序,HttpControllerHandler...四.WebApi核心对象HttpClient:    上面介绍完服务器端的接收和响应HTTP请求的操作方法,接下来介绍一个客户端生成HTTP请求,用与请求和获取服务器返回的消息,新版本的.NET,提供类...HTTPClient类用来客户端生成和获取HTTP请求的类。

3.1K100

ASP.NET MVC5+EF6+EasyUI 后台管理系统-WebApi的用法与调试

1:ASP.NET MVC5+EF6+EasyUI 后台管理系统(1)-WebApi与Unity注入 使用Unity是为了使用我们后台的BLL和DAL层 2:ASP.NET MVC5+EF6+EasyUI...后台管理系统(2)-WebApi与Unity注入-配置文件 3:ASP.NET MVC5+EF6+EasyUI 后台管理系统(3)-MVC WebApi 用户验证 (1) 4:ASP.NET MVC5...+EF6+EasyUI 后台管理系统(4)-MVC WebApi 用户验证 (2) 以往我们讲了WebApi的基础验证,但是有新手经常来问我使用的方式 这次我们来分析一下代码的用法,以及调试的方式...WebApi一些场景我们会用到,比如: 1.对接各种客户端(移动设备) 2.构建常见的http微服务  3.开放数据  4.单点登陆  等......token并进行2个逻辑验证 1.验证token是否有效 2.验证接口有没有权限(通过后台分配权限来获取Action)这个操作跟我们授权界面是一样的  (注:如果注释掉即所有登陆用户都可以访问所有接口,

2.1K30

【愚公系列】2023年02月 WMS智能仓储系统-003.HttpContext的使用

文章目录 前言 一、HttpContext的使用 1.注入 2.控制器中使用 3.运行 二、Session和Cookies的封装 1.封装类 2.注入 3.使用 ---- 前言 网页和webapi程序交互是通过...HttpContext 对象主要包含以下信息: Request 用于获取用户请求的对象,浏览器向Web程序提交表单、访问的URL、URL包含的查询字符串、报文请求头等等。...可以包括端口 HttpContext 获取或设置请求上下文 IsHttps 检测当前是否HTTPS连接 Method 获取或设置HTTP方法 Path 获取或设置当前请求的路径,即URL PathBase...Query 查询字符串的集合 QueryString 获取或设置用于Request.Query创建查询集合的原始查询字符串 Scheme 获取或设置HTTP请求方案 .NET Core访问...HttpContext需要进行注入,.NET Core内置了IHttpContextAccessor接口,HttpContextAccessor默认实现了它简化了访问HttpContext。

39710

ASP.NET Web API: 宿主(Hosting)

ASP.NET Web API 处理架构中介绍了ASP.NET Web API主要有三层组成:宿主(hosting),消息处理管道(message handler pipeline)和控制器处理(controller...由于该 URL 不必映射到文件,因此可以使用对用户操作进行描述因而更易于被用户理解的 URL,路由ASP.NET Web API上一样有重要的位置。...的管道事件PostResolveRequestCache,对每一个Http请求,这个模块路由集合匹配符合路由规则,如果有一个匹配,则: 从Route Data获取到一个route handler...从Route Handler获取到一个实现IHttpHandler接口的Http处理程序 最后,当前的请求上下文映射到上述Http处理程序 因此,ASP.NET 管道的最后将请求发送这个处理器。...ASP.NET WebAPI Hosting Techniques http://www.codeproject.com/Articles/555923/ASP-NET-WebAPI-Hosting-Techniques

1.3K60

VB.NET ASP.NET WebAPI及应用(番外篇)Swagger接口文档自动生成

WebAPI应用集合列表 VB.NET 创建ASP.NET WebAPI及应用(一) VB.NET 创ASP.NET WebAPI及应用(二) IIS和MYSQL安装 VB.NET ASP.NET WebAPI...及应用(三)使用Mysql数据库简单的用户登录注册取数据WebAPI VB.NET ASP.NET WebAPI及应用(四)[完结] 部署与客户端连接 还在为写接口文档而烦恼吗?...Imports System.Web.Http Imports Swashbuckle.Application <Assembly: PreApplicationStartMethod(GetType(...控制器目录下明天加一个默认HomeController控制器 八,然后点击运行项目,出现403错误不用管他(因为没有默认指定控制器),我们直接在地址后面添加/api/home 访问我们创建的home...控制器即可 8.1.出现以下页面说明成功访问home控制器Swagger UI 九.接下来测试一下Swagger是否已经自动生成WebAPI文档,我们只需要在地址后面添加http://localhost

2K40

VB.NET 创建ASP.NET WebAPI及应用(一)

TCP连接,然后,数据库密码账号等敏感信息都保存在代码里面,很容易就被人破解拿走; 第三,它可以把我们的业务逻辑很好的隐藏起来,用户只要传入参数,获取数据即可,根本不知道我们是如何逻辑取得数据...怎么用VB.NET 创建WebAPI服务 一,打开我们的 VS死丢丢,创建一个ASP.NET项目 二,精简APS.NET程序(这里只说WebAPI哈,其他的东西砍掉) 2.1 要砍掉的目录如下...Controllers,目录里面已经生成了两个默认的控制器,分别是MVC控制器HomeController.vb和WebAPI控制器ValuesController.vb 4.1 MVC控制器HomeController.vb...,看一下WebAPI控制器的访问,MVC控制已配置默认控制器Home启动项目是,第一眼看到的即是!!!...目录里面Controllers新建一个LoginController.vb登录控制器简单测试一下 代码如下 Imports System.Net Imports System.Web.Http Public

3.1K20

ASP.Net MVC开发基础学习笔记:五、区域、模板页与WebAPI初步

一、区域—麻雀虽小,五脏俱全的迷你MVC项目 1.1 Area的兴起   为了方便大规模网站的管理大量文件,ASP.NET MVC 2.0版本引入了一个新概念—区域(Area)。 ?   ...中新增一个控制器,并选择“空WebAPI”类型模板,取名为:ProductController。...其对应的JS语句为:可以看到,我们通过api/Product调用了API控制器的GetAllProducts方法,获取了所有产品信息。...的Main方法,调用RestClient类为我们提供的方法对WebAPI服务器(这里是本机:http://localhost:8080/)发起访问: class Program {...,《理解Restful架构》,http://www.ruanyifeng.com/blog/2011/09/restful.html (5)便当之神,《ASP.Net WebAPI》,http://www.cnblogs.com

2.2K20

ASP.NET MVC5+EF6+EasyUI 后台管理系统(66)-MVC WebApi 用户验证 (2)

权限验证 应用到实际来 调试 开始: 1.过滤器验证   我们之前也是通过过滤器来验证对于Action的操作权限,接口也不例外,Action切入,每次访问的时候都附带Token信息,也许你可以通过下列...1.从URL取到Token,利用之前加密的方式来揭秘Token并得出Token用户名 2.利用用户获取Session的Token 3.ValidateTicket验证,判断Session的Token...利用到了MVC的过滤器,调用Action时候优先进行权限校验,这样就完成了对用户进行接口授权的样例。...管理的是每一个控制器的Action(操作码) 我们的WebApi也是如此,每个控制器的操作码,WebApi运行时候把数据填充到SysModule表和SysModuleOperation表来 1....LoginUserManage.DecryptToken(token.Trim()); perm = userBLL.GetPermission(userName, controller);//获取当前用户的权限列表

1.2K80

快速入门系列--WebAPI--01基础

RouteTable.Routes.MapPageRoute(…); 命名空间为System.Web.Routing WebAPI的路由:首先介绍其相关类型,他们均是对Http报文的简易封装,System.Net.Http...命名空间为System.Web.Http.Routing 两个路由的衔接,例如在Web Host模式中将WebAPI寄宿于一个Web应用时,其最终的URL路由还是通过ASP.NET本身的路由系统完成,...那么OAuth该场景下的作用是,用户授权该应用以自己名义调用新浪微博的webAPI获取自己的邮箱地址,涉及4个角色:资源拥有者,一般为最终用户;客户端应用,需要获得资源拥有者授权并最终访问受保护资源的应用...该模型,通过获取当前请求的AccessToken,之后调用Windows Live Connect提供的API(https://apis.live.net/v5.0/me)。...IMP类型授权的客户端运行于纯客户端上下文环境,AC类型的使用户运行于服务器的应用,比如MVC应用的Controller。

2.2K70

ASP.NET MVC5+EF6+EasyUI 后台管理系统(65)-MVC WebApi 用户验证 (1)

1.WebApi服务端接收访问请求,需要做安全验证处理,验证处理步骤具体如下: 1) 如果是合法的Http请求,Http请求头中会有用户身份的票据信息(如果是跨域那么无法在请求头中添加票据),服务端会读取票据信息...登录及权限验证流程 1) 用户打开浏览器,并在地址栏输入页面请求地址,提交; 2) 浏览器解析Http请求,发送到Web服务器;Web服务器验证用户请求,首先判断是否有登录的票据信息; 3) 用户没有登录票据信息...,则跳转到用户请求的页面; 9) 验证用户当前要操作的页面或页面元素是否有权限操作,首先需要发起api服务请求,获取用户的权限数据; 10). api用户权限服务根据用户名,查找该用户的角色信息,并计算用户权限列表...输入http://localhost:13743/help可以看到,我们的接口已经webapi help列出,并可以查看调用方式(VS2012可能没有自动生成WebApi Help,需要从Nuget...System.Net.Http; using System.Text; using System.Web; using System.Web.Http.Filters; namespace Apps.WebApi.Core

1.6K50

ASP.NET MVC5+EF6+EasyUI 后台管理系统-关于WebApi的用法

以往我们讲了WebApi的基础验证,但是有新手经常来问我使用的方式 这次我们来分析一下代码的用法,以及调试的方式 WebApi一些场景我们会用到,比如: 1.对接各种客户端(移动设备)2.构建常见的...http微服务 3.开放数据 4.单点登陆  等... 65代码下载  密码:4bfb  本文主要演示几点:主要也是对以往的回顾整理 1.使用HelpPage文档 2.Postman对接口进行调试...(之前的样例太过简单,这次加一些参数,让初学者多看到这些场景) 3.调试接口 1.HelpPage Api帮助文档 我们新建的WebApi集成了微软自带的HelpPage,即Api的文档,我们编写好接口之后会自动生成一份文档...从图中可以看出,每一个控制器的接口都会列出来,并根据注释和参数生成文档,全自动 点击接口可以看到参数和请求方式 ?...token并进行2个逻辑验证 1.验证token是否有效 2.验证接口有没有权限(通过后台分配权限来获取Action)这个操作跟我们授权界面是一样的  (注:如果注释掉即所有登陆用户都可以访问所有接口,

54800

.NET WebAPI 实现 接口版本控制并打通 Swagger支持

我们开发 webapi 项目时如果遇到 api 接口需要同时支持多个版本的时候,比如接口修改了入参之后但是又希望支持老版本的前端(这里的前端可能是网页,可能是app,小程序 等等)进行调用,这种情况常见于...,本文主要讲解后面两种方法,如何在 asp.net webapi 项目中优雅的使用 header 或者 query 传入 版本标记,用来支持api的多个版本逻辑共存,并且扩展 Swagger 来实现 SwaggerUI...首先创建一个 asp.net webapi 项目,本文使用 vs2022 直接创建 asp.net webapi 项目 项目创建好之后安装如下几个nuget包: Swashbuckle.AspNetCore...Controllers 下按照版本建立的独立的文件夹 v1 和 v2 然后 v1 和 v2 的文件夹下防止了对于的 Controllers,如下图的结构 然后只要在对应文件夹下的控制器头部加入版本标记...至此 关于 .NET WebAPI 实现 接口版本控制并打通 Swagger支持 就讲解完了,有任何不明白的,可以文章下面评论或者私信我,欢迎大家积极的讨论交流,有兴趣的朋友可以关注我目前维护的一个

95340

浅析Entity Framework Core2.0的日志记录与动态查询条件

日志记录方面,有了比较大的变化..所以我觉得还是需要学习学习 正文 一、 Entity Framework Core2.0的日志记录 早在Entity Framework Core1.0 ,我们就使用相关的...Entity Framework Core2.0  估计是为了配合ASP.NET Core的日志.所以对这些接口进行了更进一步的包装,也弃用了一些接口和类,如:IRelationalCommandBuilderFactory...,DbCommandLogData 但是Entity Framework Core2.0 DbContextOptionsBuilder添加了新的扩展方法.UseLoggerFactory 看到LoggerFactory...这里作为例子,只将日志记录在了调试窗口..当然也可以记录在自己的文件..具体请参考LoggerFactory的相关说明.....EF core2.0已经完全可以用于生产环境了..虽然之前的线路图中答应的事情..比如更方便的映射..比如分组..比如拦截..都延期到了2.1版本..但是这些并不影响它的强大~..

1.4K60

asp dotnet core 从零开始创建一个 WebApi 服务

现在空白的 WebApi 服务还没有什么好玩的,让咱添加一个 Api 用于返回有趣的内容 默认创建的项目会添加一个 Controllers 文件夹,里面存放着控制器控制器里面有方法,方法上面标记特性就可以用来开启...依然控制器里面就包含了对外服务的相关方法,和上面用控制台创建的相同 控制器本身可以有多个,如下图创建一个简单的控制器 ?...创建完成之后按下 F5 VisualStudio 运行调试 浏览器访问 https://127.0.0.1:5001/api/foo 就可以看到输出了 lindexi 的值。... ASP.NET Core 可以 Program.cs 里面启动主机时设置监听的端口 通过添加 webBuilder.UseUrls("http://0.0.0.0:12307"); 就可以监听 12307...core 通过 frp 发布自己的网站 asp dotnet core 从 Frp 获取用户真实 IP 地址 ASP.NET Core 连接 GitLab 与 MatterMost 打造 devops

1.3K20

VB.NET ASP.NET WebAPI及应用(三)使用Mysql数据库简单的用户登录注册取数据WebAPI

WebAPI应用集合列表 VB.NET 创建ASP.NET WebAPI及应用(一) VB.NET 创ASP.NET WebAPI及应用(二) IIS和MYSQL安装 一,首先我们要在数据库里面创建一个简单用户表...2.1.1 文章一项目里面创建一个ClassModel文件夹,用来存放类文件 2.1.2 文件夹里面添加一个MysqlHelper.vb帮助类文件 2.1.3 添加MySql.Data.dll...Class 2.2.2 然后就是注册控制器的代码了 Imports System.Net Imports System.Web.Http ''注册API控制器 Public Class RegisterController...phone=13800138000&pwd=e10adc3949ba59abbe56e057f20f883e 各种登录错误效果 登录成功效果 三,数据库取数WebAPI书写 新建一个控制器...DataController.vb 控制器代码 Imports System.Net Imports System.Web.Http Imports Newtonsoft.Json Public Class

1.7K10
领券