CORS Filter http://software.dzhuvinov.com/cors-filter-installation.htmlを使用して Access-Control-Allow-Origin の問題を解決しようとしました。私は指示に従いますが、POSTではなくGETのみが機能します。Tomcat サーバーに Java サーブレットがあり、Web アプリケーションを介してこのサーブレットを呼び出します。コードは次のとおりです。
var url = "http://server_url:8080/"
+ "gtpapi/testPlan/guid_" + planId + "/packages/" + packId + "/results";
$.ajax({
contentType : 'application/json',
type : "POST",
crossDomain: true,
url : url,
data : JSON.stringify(postData),
async : false,
dataType : 'json',
error : function(XMLHttpRequest) {
throw XMLHttpRequest.statusText;
}
});
そして、これが私のWebサーバーのweb.xmlです。
<filter>
<!-- The CORS filter with parameters -->
<filter-name>CORS</filter-name>
<filter-class>com.thetransactioncompany.cors.CORSFilter</filter-class>
<init-param>
<param-name>cors.allowOrigin</param-name>
<param-value>*</param-value>
</init-param>
<init-param>
<param-name>cors.supportedMethods</param-name>
<param-value>GET, HEAD, POST, OPTIONS</param-value>
</init-param>
<init-param>
<param-name>cors.supportedHeaders</param-name>
<param-value>Origin, Content-Type, X-Requested-With, Access-Control-Allow-Origin</param-value>
</init-param>
<init-param>
<param-name>cors.supportsCredentials</param-name>
<param-value>false</param-value>
</init-param>
</filter>
<filter-mapping>
<!-- CORS Filter mapping -->
<filter-name>CORS</filter-name>
<url-pattern>/gtpapi/*</url-pattern>
</filter-mapping>
私は一日中多くの方法を試しましたが、今のところ何もうまくいきません。また、「Access-Control-Allow-Origin」、「*」をヘッダーに追加するか、このリンクhttp://padcom13.blogspot.fr/2011/09/cors-filter-for-Java-applicationsとして CORSFilter クラスを作成しようとしました。 html . しかし、それは私にはまったく機能しません。何か案は?