angular - 如何在本地主机上使用 ASP .NET Core 2.2 设置 Angular8 CORS?
问题描述
我已阅读有关使 CORS 在 .Net Core 2.2 上工作的帖子,但我仍然无法使其工作。
我有一个在 localhost:4200 上运行的 Angular 客户端和一个在 localhost:5000 上运行的 .Net Core 2.2 WebApi。
Web api 允许来源 localhost:4200(客户端)
WebApi Cors 设置
services.AddCors(options =>
{
options.AddPolicy(CorsPolicy,
builder => builder
.WithOrigins("localhost:4200")
.AllowAnyMethod()
.AllowAnyHeader()
.AllowCredentials());
});
app.UseCors(CorsPolicy);
Angular 客户端标头
let headers_obj = {
'Content-Type': 'application/json',
'Access-Control-Allow-Methods': '*',
'Access-Control-Allow-Origin': '*',
'Access-Control-Allow-Headers':'Origin, Content-Type, X-Auth-Token, content-type',
Authorization:"Basic " + btoa(data.username+":"+data.password)
}
解决方案
你可以使用代理来实现
第一次编辑angular.json
"serve": {
"builder": "@angular-devkit/build-angular:dev-server",
"options": {
"browserTarget": "app:build",
"proxyConfig": "proxy.conf.json"<-----add this
},
然后proxy.conf.json
在文件附近创建angular.json
插入这个
{
"/Name_OF_API/1.0.0": {
"target": "https://your_calling_api/",
"changeOrigin": true,
"secure": false,
"logLevel": "debug"
}
}
然后像这样初始化你的基本路径
protected basePath = './Name_OF_API/1.0.0';
然后运行并检查cmd
显示您的proxy
设置
推荐阅读
- python - 如何更改按钮单击时的图像?
- api - Cowin api 获取受益人问题
- web - Core Web Vital shwoing poor urls and increasing day by day
- android - 手动关闭小吃店时向下移动按钮
- python - 将自定义函数应用于数据框中列中的每一行
- function - Function imported to script from module can't access package imported at start of script, but can if package import moved to same module
- tensorflow - Tensorflow gradient back-propagation with tf.repeat
- javascript - 我想根据下拉列表的用户输入创建多个表单
- gis - Agent to another Agent communication in AnyLogic
- ubuntu - QStandardPaths:XDG_RUNTIME_DIR 未设置,在 Ubuntu 系统中安装 Intel oneAPI 基础工具包时默认为“/tmp/runtime-root”