我尝试了所有可能的方法来解决 CORS 问题,同时使用 ng服务通过 VS代码 / p>
ng serve --proxy config proxy.conf.json
{
"/`OSTNextService`": {
"target": "https://localhost/OSTNextService",
"secure": true,
"pathRewrite": {
"^/OSTNextService": ""
},
"`changeOrigin": true`
}
}
将IIS标头设置为指定域。就我而言 https://localhost:4200
设置服务global.asax文件
对我没有任何帮助,并且出现
之类的错误在以下位置访问XMLHttpRequest 'https://localhost/OSTNextService/OSTPortalService.svc/GetUserName' 来自来源“ https://localhost:4200”的信息已被CORS政策阻止: 响应中“ Access-Control-Allow-Origin”标头的值 当请求的凭据模式为时,不得为通配符'*' '包括'。发起的请求的凭据模式 XMLHttpRequest由withCredentials属性控制。
当我将应用程序托管在IIS中并将dist文件夹映射到该文件夹时,一切正常。但是,每次我更改生成应用程序所需的.ts文件时,几乎浪费了两倍的时间。请提供建议,帮助我。
答案 0 :(得分:0)
在代理文件中使用“ / OSTNextService”而不是“ / OSTNextService
”。而且,如果仅使用"target": "https://localhost/"
,则不需要rewrite
,
也不要在您的应用中使用完整的URL,而是使用相对的/OSTNextService/OSTPortalService.svc/GetUserName
,它会命中您的代理并转发到localhost:80 /...
我认为不需要修改IIS标头。