如何解决.Net Core Web API承载颁发者无效
我已经基于最新的Microsoft模板编写了Blazor WASM应用程序。在开发模式下,一切正常,但是将其发布到Azure App Service之后,我在调用API时会随机得到401未经授权,并查看返回的标头
WWW-Authenticate: Bearer error="invalid_token",error_description="The issuer 'https://*domain*.azurewebsites.net' is invalid"
这是客户端使用https:// domain .azurewebsites.net客户端的时间。因此它与网络API相匹配。
我还有一个附加到应用程序服务的自定义域,这意味着也有https:// www。 domain .co.uk和https:// domain .co.uk都经过SSL认证。
我已经检查了JWT令牌,并且该令牌包含我所呼叫网站版本的正确URL。
有时一切正常,但60%的时间允许用户登录,然后API调用失败。我似乎无法将其跟踪到1个域名或过期登录之类的模式。如果先注销然后再登录,则不能解决问题。
配置看起来像这样
public void Configure(IApplicationBuilder app,IWebHostEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
app.UseDatabaseErrorPage();
app.UseWebAssemblyDebugging();
}
else
{
app.UseExceptionHandler("/Error");
}
app.UseHttpsRedirection();
app.UseBlazorFrameworkFiles();
app.UseStaticFiles();
app.UseRouting();
app.UseIdentityServer();
app.UseAuthentication();
app.UseAuthorization();
app.UseEndpoints(endpoints =>
{
endpoints.MapRazorPages();
endpoints.MapControllers();
endpoints.MapFallbackToFile("index.html");
});
}
感谢任何帮助或正确方向的提示
欢呼
戴夫
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。