在internet explorer中发布表单不起作用

sg2wtvxw  于 2021-07-03  发布在  Java
关注(0)|答案(1)|浏览(301)

我有一个 SAML 请求非登录服务器的服务器,以便服务器接收请求并将其发布到已登录服务器。例如
最初,一个saml请求被发送到http://customer0..com/handleservlet 它知道customer1应该处理该请求,所以作为响应,它提交该请求服务器http://customer1..com/handleservlet 以邮寄的形式。出于某种原因,这在internetexplorer11中不起作用,但在chrome或firefox中效果很好。

StringBuffer sbfForm = new StringBuffer();
PrintWriter out = request.getWriter();
request.setContentType("text/html");
sbfForm.append("<html><body onload=\"document.abcform.submit()\">\n");
sbfForm.append("<form action=\"" + destURL + "\"  method=\"POST\" name=\"abcform\">\n");
sbfForm.append("<input type=\"hidden\" name=\"SAMLRequest\" value=\"" + samlRequestMsg + "\" />\n");
sbfForm.append("<input type=\"hidden\" name=\"RelayState\" value=\"" + relayState + "\" />\n");
sbfForm.append("</form></body></html>\n");

out.print(sbfForm.toString());

这在chrome或firefox中可以正常工作,但在ie11中不行。有没有人遇到过类似的问题?ie设置的原因是什么?

a11xaf1n

a11xaf1n1#

这是x-frame-options和内容安全策略的问题。一旦我把两者都改了,它在IE浏览器和chrome上都能正常工作。

相关问题