【发布时间】:2018-10-31 20:40:20
【问题描述】:
我有一个使用 ASP.NET 标识的 API,一旦生成了如下的 token,我就很容易获得 UserId
HttpContext.Current.User.Identity.GetUserId().ToString())
现在我有一个外部应用程序正在尝试使用此 API 进行身份验证,但我需要生成 token 的用户的 UserId
当我向http://myapiURL/token 发送请求时,我得到以下信息
- access_token
- token_type
- expires_in
- 用户名
- 发布
- 过期
当我使用生成的token 发送获取API/Account/UserInfo 的请求时,我得到以下信息
- 电子邮件
- 已注册
- 登录提供者
问题我如何获得UserId?
我有两个选择,
A. 我将UserInfoViewModel GetUserInfo() 修改为在UserInfoViewModel 中有UserId?
B. 我在 ApiController 中创建了一个新方法,例如运行 HttpContext.Current.User.Identity.GetUserId().ToString()) 的 GetUserId (API/Account/GetUserId) 并发送回
用户ID
还有其他方法吗?
干杯
【问题讨论】:
标签: c# asp.net-web-api