services.AddCors(options =>
{
options.AddPolicy("AllowAllOrigins",
builder =>
{
builder.AllowAnyOrigin()
.AllowAnyHeader()
.AllowAnyMethod();
});
});
app.UseCors("AllowAllOrigins");
import { HttpClient } from '@angular/common/http';
@Injectable()
export class MyService {
constructor(private http: HttpClient) { }
getData() {
return this.http.get('/api/data');
}
}
[ApiController]
[Route("api/[controller]")]
[EnableCors("AllowAllOrigins")]
public class DataController : ControllerBase
{
[HttpGet]
public List Get()
{
return new List { "data1", "data2", "data3" };
}
}
这个例子展示了如何从Angular应用中调用ASP.NET Core控制器。在这种情况下,Angular应用和API都在同一台服务器上,所以我们只需使用相对路径。如果你需要从Angular应用中调用另一个服务器上的API,你需要在HTTP请求中指定完整的URL。