问题答疑
一些问题答疑。如果您有什疑惑,可以反馈给我。帮助丰富这份文档。
1、发布后,登录显示“未授权”.Request failed with status code 403
问题原因:由于部署环境默认production,但是并未配置功能相关的接口,导致验证接口权限失败
C#
//校验用户是否有接口权限
if (_hostEnvironment.IsProduction())
{
var endpoint = httpContext.GetEndpoint() as RouteEndpoint;
var pattern = endpoint?.RoutePattern;
var interfaces = await _currentUser.GetInterfacesAsync();
var isAllow = interfaces.Any(x => x.Path == pattern?.RawText && x.RequestMethod.Equals(httpContext.Request.Method, StringComparison.CurrentCultureIgnoreCase));
if (!isAllow)
{
context.Fail();
return;
}
}
解决办法:如果您不需要精确控制接口权限,可使用其他模式发布。如果需要接口权限,请使用其他模式部署,并进入功能管理-绑定接口,绑定完毕之后重新使用production模式