gpt4 book ai didi

asp.net - Web Api 2中的子域CORS

转载 作者:行者123 更新时间:2023-12-04 04:25:38 24 4
gpt4 key购买 nike

我正在使用WebApi,就像从http://t.co/mt9wIL8gLA中学到的一样

如果我确切知道客户请求的完美来源URI,那么一切都很好。
太糟糕了,我正在编写企业范围的API,因此我的要求是
http://apps.contoso.com/myApp/api/foobar

可能来自我域中的所有应用,例如:

http://apps.contoso.com/CRMApp

http://apps.contoso.com/XYZ

http://www.contoso.com/LegacyApp

http://test.contoso.com/newApps/WowApp
...
以及我的企业构建的所有新应用。

解决此问题的最佳方法是什么?使用Origins="*"很俗气,将源添加到我的WS源中,而重新部署又很俗气。

我当前的解决方案是在http://www.asp.net/web-api/overview/security/enabling-cross-origin-requests-in-web-api#cors-policy-providers中编写自定义的CorsPolicyAttribute

并从web.config中的appsettings读取允许的来源。
最好是在自定义属性内,检查请求Origin: header 是否来自contoso.com(可能带有正则表达式),然后将其添加到允许的起源中。

我想知道是否有更好,更标准的方法。

最佳答案

使用DynamicPolicyProviderFactory。那就是我使用的...前几天我什至发布了一个question,它展示了如何将允许的域添加到web.config文件中。

关于asp.net - Web Api 2中的子域CORS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22511627/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com