如何在 WSO2IS 5.10.0 中允许 CORS 访问
How to allow CORS access in WSO2IS 5.10.0
我需要从不同的域访问我的身份服务器,我正在使用 WSO2IS 提供的 REST 端点进行登录、注册、用户信息等。
我尝试了以下配置但没有成功:
将以下配置添加到 WSO2 Identity Server 分发包中的 <IS-HOME>/repository/resources/conf/templates/repository/conf/tomcat/web.xml.j2
。
请注意,以下是取自 https://github.com/wso2/identity-apps#run-in-dev-mode 的样本。这应该也适合你。
<filter>
<filter-name>CORS</filter-name>
<filter-class>com.thetransactioncompany.cors.CORSFilter</filter-class>
<init-param>
<param-name>cors.allowOrigin</param-name>
<param-value>https://localhost:9000, https://localhost:9001</param-value>
</init-param>
<init-param>
<param-name>cors.supportedMethods</param-name>
<param-value>GET, HEAD, POST, DELETE, OPTIONS, PATCH, PUT</param-value>
</init-param>
<init-param>
<param-name>cors.exposedHeaders</param-name>
<param-value>Location</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CORS</filter-name>
<url-pattern>/*</url-pattern>
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
</filter-mapping>
在上面的 param-value
of <param-name>cors.allowOrigin</param-name>
添加您想要允许 CORS 的主机(您可以添加多个逗号分隔或空格分隔的值)。如果主机有一个端口,那也应该包括在内。理想情况下,它应该采用 <protocol>://<host>:<port>
.
格式
同样在上面的 param-value
of <param-name>cors.supportedMethods</param-name>
。添加您需要的 HTTP 方法(您将始终需要 OPTIONS 方法,因为这是用于 CORS 检查的方法)。
您可以使用 <url-pattern>
配置配置 URL 以允许 CORS。 <url-pattern>/*</url-pattern>
表示身份服务器的所有 URL 都允许 CORS。
有关 CORS 过滤器配置的更多信息,请参阅:http://software.dzhuvinov.com/cors-filter-configuration.html
我需要从不同的域访问我的身份服务器,我正在使用 WSO2IS 提供的 REST 端点进行登录、注册、用户信息等。
我尝试了以下配置但没有成功:
将以下配置添加到 WSO2 Identity Server 分发包中的 <IS-HOME>/repository/resources/conf/templates/repository/conf/tomcat/web.xml.j2
。
请注意,以下是取自 https://github.com/wso2/identity-apps#run-in-dev-mode 的样本。这应该也适合你。
<filter>
<filter-name>CORS</filter-name>
<filter-class>com.thetransactioncompany.cors.CORSFilter</filter-class>
<init-param>
<param-name>cors.allowOrigin</param-name>
<param-value>https://localhost:9000, https://localhost:9001</param-value>
</init-param>
<init-param>
<param-name>cors.supportedMethods</param-name>
<param-value>GET, HEAD, POST, DELETE, OPTIONS, PATCH, PUT</param-value>
</init-param>
<init-param>
<param-name>cors.exposedHeaders</param-name>
<param-value>Location</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CORS</filter-name>
<url-pattern>/*</url-pattern>
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
</filter-mapping>
在上面的 param-value
of <param-name>cors.allowOrigin</param-name>
添加您想要允许 CORS 的主机(您可以添加多个逗号分隔或空格分隔的值)。如果主机有一个端口,那也应该包括在内。理想情况下,它应该采用 <protocol>://<host>:<port>
.
同样在上面的 param-value
of <param-name>cors.supportedMethods</param-name>
。添加您需要的 HTTP 方法(您将始终需要 OPTIONS 方法,因为这是用于 CORS 检查的方法)。
您可以使用 <url-pattern>
配置配置 URL 以允许 CORS。 <url-pattern>/*</url-pattern>
表示身份服务器的所有 URL 都允许 CORS。
有关 CORS 过滤器配置的更多信息,请参阅:http://software.dzhuvinov.com/cors-filter-configuration.html