使用 .net Web Api 和 Forms 身份验证,我有一个 Api 方法可以进行第二次 Api 调用。第一个 Api 方法是从 javascript 调用的,我可以使用 GetUserPrincipal 方法获取当前登录用户的身份:
private void Put(int id, object value) {
var principal = ControllerContext.Request.GetUserPrincipal();
....
var responseMessage = new HttpClient().PutAsync("/api/secondapicontroller/", null).Result
....
}
但是,当该方法进行链接的内部 Api 调用时,GetUserPrincipal 返回一个空对象、没有身份、未经过身份验证等:
private void Put(int id, object value) {
var principal = ControllerContext.Request.GetUserPrincipal();
....
}
您如何将身份验证信息从第一个 Api 方法传递到第二个。