私は他のサブドメイン(subdomain1.domain.com - > subdomain2.domain.com)内の別のページへPOSTするWebページを持っています。私はそのような状況を可能にするために構成を必要としていることを理解しています。私はすべての設定をして、それはクローム、FIREFOXとIE11で動作します..CORS:アクセス制御許可元ヘッダー(IE11)に発信元が見つかりません
しかし、例外があります、私のクライアントネットワーク上の要求はdoesntの作品を返す "アクセス制御許可元クライアントのネットワークで要求がSECURITYヘッダーを返さないために発生することがわかりました。下の画像よりよくそれを説明することができます。
IE11 MYクライアントネットワーク(サーバーから赤にCORSリターン)
IE11 MYクライアントネットワーク INSIDE(何のセキュリティ・ヘッダはありませんOUTSIDEサーバーからの復帰)
JAVA CODEサーバCORS FILTER(サーバからのセキュリティ・ヘッダ・リターンはありません)
public class CorsFilter implements Filter {
@Override
public void init(FilterConfig filterConfig) throws ServletException {
}
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain chain) throws IOException, ServletException {
HttpServletRequest request = (HttpServletRequest) servletRequest;
HttpServletResponse resp = (HttpServletResponse) servletResponse;
resp.addHeader("Access-Control-Allow-Origin", "https://intranet2.culturainglesa.net");
resp.addHeader("Access-Control-Allow-Credentials", "true");
resp.addHeader("Access-Control-Allow-Methods", "GET,POST");
resp.addHeader("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
// Just ACCEPT and REPLY OK if OPTIONS
if (request.getMethod().equals("OPTIONS")) {
resp.setStatus(HttpServletResponse.SC_OK);
return;
}
chain.doFilter(request, servletResponse);
}
@Override
public void destroy() {
// TODO Auto-generated method stub
}
}
サーバがIE11に応じて、CORSヘッダを送信していないようにはい、それが見えます。解決方法は、サーバーがChromeに送信するのと同じIEヘッダーをIEに送信することです。サーバーの構成方法や使用しているサーバーサイドソフトウェアに関する情報を表示する必要があります。そうしないと、サーバーがCORSヘッダーを送信していない理由を推測できなくなります。 – apsillers
ありがとう、私は返信corsのサーバーフィルターで質問を更新しました。そのJavaフィルタはjboss 7.1.1でホストされています –