vis*_*ode 13 c# asp.net-core asp.net-core-6.0
经过测试Postman
并且工作正常。在浏览器中我收到此错误:
从源“https://localhost:44426”访问“http://localhost:5081/api/Accounting/GetSales”处的 XMLHttpRequest 已被 CORS 策略阻止:不存在“Access-Control-Allow-Origin”标头关于所请求的资源。
使用 Angular 和 .Net6 的 Asp Net Core 项目
[DisableCors]
[HttpGet("GetSales")]
public IEnumerable<SaleDto> GetSales()
{
var result = _context.Sales.Select(x => new SaleDto
{
AccountName = x.Account.Name,
CategoryName = x.Category.CategoryName,
SaleDate = x.SaleDate,
SaleId = x.SaleId,
SaleValue = x.SaleValue,
});
return result;
}
Run Code Online (Sandbox Code Playgroud)
注册中间件时是否有正确的条目? 在 ASP.NET Core 中启用跨源请求 (CORS)。
您将需要添加本地主机和端口号。我相信端口号目前正在引起问题。如果两个站点位于同一端口号,您可能不会遇到此问题。另请参阅同一域上 CORS 错误的答案。 同一域上出现 CORS 错误?
另外,您希望启用 CORS,而不是禁用它。CORS 放宽了安全措施,以便您的代码可以跨端口访问。
对我有用的是
app.UseCors(builder => builder
.AllowAnyHeader()
.AllowAnyMethod()
.AllowAnyOrigin()
);
Run Code Online (Sandbox Code Playgroud)
前
app.UseRouting();
app.UseEndpoints(endpoints =>
{
endpoints.MapControllerRoute(
name: "default",
pattern: "{controller=Home}/{action=Index}/{id?}");
});
Run Code Online (Sandbox Code Playgroud)
在你Program.cs
或startup.cs
然后你可以改变你的配置
归档时间: |
|
查看次数: |
37496 次 |
最近记录: |