我正在尝试在Azure APIM中配置我的API,以便可以由新的Azure APIM开发人员门户调用它(目前仍在预览中)。 当我尝试从开发门户调用API时,出现错误消息,我需要配置CORS以允许从开发门户进行调用。 我在我的API中添加了CORS策略(出于测试目的,使用origin = *),但仍然存在相同的问题。 我想念什么吗?
答案 0 :(得分:1)
您可能想对其进行调整,但这可以解决问题:
<cors>
<allowed-origins>
<origin>*</origin>
</allowed-origins>
<allowed-methods>
<method>*</method>
</allowed-methods>
<allowed-headers>
<header>*</header>
</allowed-headers>
<expose-headers>
<header>*</header>
</expose-headers>
</cors>
答案 1 :(得分:0)
我在所有API操作级别都执行了此操作,并且必须包含“ Access-Control-Allow-Origin”标头。
<cors allow-credentials="true">
<allowed-origins>
<origin>*YourDomain*</origin>
</allowed-origins>
<allowed-methods>
<method>GET</method>
<method>POST</method>
</allowed-methods>
<allowed-headers>
<header>Ocp-Apim-Subscription-Key</header>
<header>Access-Control-Allow-Origin</header>
<header>Content-Type</header>
</allowed-headers>
</cors>
答案 2 :(得分:0)
以下是应应用的确切政策:
<cors>
<allowed-origins>
<origin>*</origin>
</allowed-origins>
<allowed-methods>
<method>GET</method>
<method>POST</method>
<method>PUT</method>
<method>DELETE</method>
<method>HEAD</method>
<method>OPTIONS</method>
<method>PATCH</method>
<method>TRACE</method>
</allowed-methods>
<allowed-headers>
<header>*</header>
</allowed-headers>
<expose-headers>
<header>*</header>
</expose-headers>
</cors>
来源:https://github.com/Azure/api-management-developer-portal/issues/290#issuecomment-551088484