从java提交HTML表单需要cookies和弹出窗口拦截器
我使用POST从java应用程序向基于web的登录服务器提交表单 但是,该网页需要cookie和弹出窗口拦截器,它们在init()javascript函数中检测和处理:从java提交HTML表单需要cookies和弹出窗口拦截器,java,html,Java,Html,我使用POST从java应用程序向基于web的登录服务器提交表单 但是,该网页需要cookie和弹出窗口拦截器,它们在init()javascript函数中检测和处理: if (document.cookie == "") { alert("Cookies are disabled. Cannot access server with this setting.\nPlease configure your browser to accept cookies.");
if (document.cookie == "") {
alert("Cookies are disabled. Cannot access server with this setting.\nPlease configure your browser to accept cookies.");
return;
}
detectPopupBlockers();
Cookie似乎只在detectPopupBlockers()函数中使用过(如果用户没有启用弹出窗口阻止程序,则表示消息已经显示)
有没有一种方法可以完全避免onload参数调用的init()函数?或者以某种方式模拟Cookie和弹出窗口阻止程序实际上已启用?我对第三种选择的唯一猜测是以某种方式取消弹出消息,告诉我我没有cookies,然后提交表单。如果它是这样绑定的:
<body onload="init();">
您可以这样做:
document.body.onload = null;
在body标签的正下方。我假设您正在使用WebClient之类的工具进行发布-难道您不能禁用Javascript并完全绕过检查吗?如果您以编程方式提交表单,该Javascript如何运行以产生问题?也许服务器只是希望您的请求附带一个cookie(在这种情况下,只需编写您的代码以遵守它发送给您的cookie头,然后重新生成请求)。请原谅,我对这一点相当陌生,但您的问题似乎有效。脚本甚至不应该运行。我提交POST请求的方式是否有问题?PrintStream ps=新的PrintStream(myHttpURLConnection.getOutputStream());ps.print(“username=“+username+”&;pwd=“+password.toString());我只是使用java的HttpURLConnection类,与WebClient完全不同
document.body.onload = null;