Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/28.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#和角度交叉原点误差_C#_Angular_Azure_Asp.net Web Api_Cross Domain - Fatal编程技术网

C#和角度交叉原点误差

C#和角度交叉原点误差,c#,angular,azure,asp.net-web-api,cross-domain,C#,Angular,Azure,Asp.net Web Api,Cross Domain,我们正在开发第五个网站。后端是使用.NETWebAPI和SQLServer开发的。该网站将部署在Azure上,可以从internet和intranet访问 我们已经配置了跨原点设置,工作正常。现在,我们已经使用SAML集成了Ping联合SSO。现在站点被重定向到第三方登录页面,并出现错误“资源上不存在访问控制允许区域标头。因此不允许使用Origin null”。在重定向到登录页面之前,不允许使用Null“。尝试指定多个以逗号分隔的原点,但仍然得到相同的错误。下面是示例代码 var cors =

我们正在开发第五个网站。后端是使用.NETWebAPI和SQLServer开发的。该网站将部署在Azure上,可以从internet和intranet访问

我们已经配置了跨原点设置,工作正常。现在,我们已经使用SAML集成了Ping联合SSO。现在站点被重定向到第三方登录页面,并出现错误“资源上不存在访问控制允许区域标头。因此不允许使用Origin null”。在重定向到登录页面之前,不允许使用Null“。尝试指定多个以逗号分隔的原点,但仍然得到相同的错误。下面是示例代码

var cors = new EnableCorsAttribute("http://localhost:4200", "*", "*");
cors.Origins.Add("https://3rd party url");  
config.EnableCors(cors);

如果通过键入url直接从web api访问SSO,同样可以正常工作。请提供解决此问题的任何指针。

您可以在客户端中使用代理,并将客户端的源代码更改为您想要的任何内容

此解决方案的优点是:

  • 您不需要在后端定义COR(提高安全性)
  • 您不必担心您的客户,只需通过npm start运行项目,只要您想发布应用程序,就可以运行ng build命令,代理将从您的设置中忽略 用于使用代理

  • 编辑
    包.json的
    “start”
    ,查看下面的内容

    “start”:“ng serve--proxy config proxy.conf.json”,

  • 在项目根目录中创建一个名为
    proxy.conf.json
    的新文件,并在其中定义代理,如下所示

    {
      "/api/*": {
        "target": "http://localhost:56492",
        "secure": "false"
      }
    }
    
  • 重要的是您使用
    npm start
    而不是
    ng service

  • 现在在your'r service.ts中,post/get请求url而不是localhost:56492/。。。只需键入/api/胶片即可


    从这里阅读更多信息:

    这种方法不起作用,我仍然会遇到同样的错误。