如何在 JBoss AS 上使用 java restful Web 服务启用 CORS
How to enable CORS with a java restful web service on JBoss AS
我有一个非常简单的 Java RESTful Web 服务,其中包括两种用于 GET 和 POST 请求的方法。我在 OpenShift 平台上使用 Jboss 应用程序服务器 7。
我需要启用 Java脚本客户端以通过发送或接收 JSON 数据使用 Ajax 使用服务。
Web 服务 运行 没有问题。我可以使用 Ajax 从同一应用程序中的脚本使用它,但我需要从其他域上的其他应用程序使用它。
如何在我的 REST 端点上启用跨源请求共享 (CORS)?
将此 header 添加到您的回复中:
Access-Control-Allow-Origin: *
例如,对于 servlet,您可以这样做:
或者,您可以将 jetty-servlets.jar
库添加为依赖项并将此过滤器添加到您的 web.xml。这将为您的所有 Web 服务启用 CORS。
<filter>
<filter-name>cross-origin</filter-name>
<filter-class>org.eclipse.jetty.servlets.CrossOriginFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>cross-origin</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
如果您只需要注释特定的服务,首先我们需要更多关于您用来实现 RESTful 服务的库的信息。
我有一个非常简单的 Java RESTful Web 服务,其中包括两种用于 GET 和 POST 请求的方法。我在 OpenShift 平台上使用 Jboss 应用程序服务器 7。
我需要启用 Java脚本客户端以通过发送或接收 JSON 数据使用 Ajax 使用服务。
Web 服务 运行 没有问题。我可以使用 Ajax 从同一应用程序中的脚本使用它,但我需要从其他域上的其他应用程序使用它。
如何在我的 REST 端点上启用跨源请求共享 (CORS)?
将此 header 添加到您的回复中:
Access-Control-Allow-Origin: *
例如,对于 servlet,您可以这样做:
或者,您可以将 jetty-servlets.jar
库添加为依赖项并将此过滤器添加到您的 web.xml。这将为您的所有 Web 服务启用 CORS。
<filter>
<filter-name>cross-origin</filter-name>
<filter-class>org.eclipse.jetty.servlets.CrossOriginFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>cross-origin</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
如果您只需要注释特定的服务,首先我们需要更多关于您用来实现 RESTful 服务的库的信息。