访问远程URL已被CORS策略阻止



我得到以下错误。我已经用cors设置了服务器端:

Access to XMLHttpRequest at 'https://www.learningcontainer.com/wp- 
content/uploads/2020/04/sample-text-file.txt' from origin 'https://localhost:44325' has been 
blocked by CORS policy: The 'Access-Control-Allow-Origin' header has a value 
'https://learningcontainer.com' that is not equal to the supplied origin.

这个配置:

services.AddCors(options =>
{
options.AddDefaultPolicy(builder =>
builder.WithOrigins("https://www.learningcontainer.com") @* .AllowAnyOrigin() *@
.AllowAnyMethod()
.AllowAnyHeader());
});

应该在服务器上完成,而不是您的服务器,而是外部API的服务器(https://www.learningcontainer.com)。在这方面你什么都不做,除了调用Web Api上的端点。

解决方案的解决方案:由于CORS是浏览器强制执行的JavaScript安全特性,您可以通过调用服务器代码来规避它,从服务器代码中执行对该Web Api端点的调用,然后将其返回给WebAssembly前端。你应该使用HttpClient从上面访问url。

WebAssembly前端通过使用HttpClient调用服务器(托管)上的控制器方法。然后使用HttpClient从托管的服务器应用程序调用url。当Web Api (url)端点返回一个值时,您将它传递给WebAssembly Blazor前端。

相关内容

  • 没有找到相关文章

最新更新