我试图使用在stackoverflow上发现的不同方法来保存.pdf文件FileUtils IO
,但是,我总是会损坏它。当我使用记事本打开损坏的文件时,我得到以下信息:
<HEAD>
<TITLE>
09010b129fasdf558a-
</TITLE>
</HEAD>
<HTML>
<SCRIPT language="javascript" src="./js/windowClose.js"></SCRIPT>
<LINK href="./theme/default.css" rel="stylesheet" type="text/css">
<LINK href="./theme/additions.css" rel="stylesheet" type="text/css">
<BODY leftmargin="0" topmargin="0">
<TABLE cellpadding="0" cellspacing="0" width="100%">
<TR>
<TD class="mainSectionHeader">
<A href="javascript:windowClose()" class="allLinks">
CLOSE
</A>
</TD>
</TR>
</TABLE>
<script language='javaScript'>
alert('Session timed out. Please login again.\n');
window.close();
</script>
</BODY>
</HTML>
后来,我尝试.pdf
使用@BalusC提供的答案从浏览器中保存文件。这个解决方案非常有帮助:我能够摆脱这些session
问题。但是,它也会产生损坏的.pdf。但是当我用记事本打开它时,它是完全不同的。但是,不再有登录问题:
<HTML>
<HEAD>
<TITLE>
Evidence System
</TITLE>
</HEAD>
<LINK href="./theme/default.css" rel="stylesheet" type="text/css">
<TABLE cellpadding="0" cellspacing="0" class="tableWidth760" align="center">
<TR>
<TD class="headerTextCtr">
Evidence System
</TD>
</TR>
<TR>
<TD colspan="2">
<HR size="1" noshade>
</TD>
</TR>
<TR>
<TD colspan="2">
<HTML>
<HEAD>
<link href="./theme/default.css" rel="stylesheet" type="text/css">
<script language="JavaScript">
function trim(str)
{
var trmd_str
if(str != "")
{
trmd_str = str.replace(/\s*/, "")
if (trmd_str != ""){
trmd_str = trmd_str.replace(/\s*$/, "")
}
}else{
trmd_str = str
}
return trmd_str
}
function validate(frm){
//check for User name
var msg="";
if(trim(frm.userName.value)==""){
msg += "Please enter your user id.\n";
frm.userName.focus();
}
if(trim(frm.password.value)==""){
msg += "Please enter your password.\n";
frm.userName.focus();
}
if (trim(msg)==""){
frm.submit();
}else{
alert(msg);
}
}
function numCheck(event,frm){
if( event.keyCode == 13){
validate(frm);
}
}
</script>
</HEAD>
<BODY onLoad="document.frmLogin.userName.focus();">
<FORM name='frmLogin' method='post' action='./ServletVerify'>
<TABLE width="100%" cellspacing="20">
<tr>
<td class="mainTextRt">
Username
<input type="text" name="userName" maxlength="32" tabindex="1" value=""
onKeyPress="numCheck(event,this.form)" class="formTextField120">
</TD>
<td class="mainTextLt">
Password
<input type="password" name="password" maxlength="32" tabindex="2" value=""
onKeyPress="numCheck(event,this.form)" class="formTextField120">
</TD>
</TR>
<tr>
<td colspan="2" class="mainTextCtr" style="color:red">
Unknown Error
</td>
</tr>
<tr>
<td colspan="2" class="mainTextCtr">
<input type="button" tabindex="3" value="Submit" onclick="validate(this.form)" >
</TD>
</TR>
</TABLE>
<INPUT TYPE="hidden" NAME="actionFlag" VALUE="inbox">
</FORM>
</BODY>
</HTML>
</TD>
</TR>
<TR>
<TD height="2"></TD>
</TR>
<TR>
<TD colspan="2">
<HR size="1" noshade>
</TD>
</TR>
<TR>
<TD colspan="2">
<LINK href="./theme/default.css" rel="stylesheet" type="text/css">
<TABLE width="80%" align="center" cellspacing="0" cellpadding="0">
<TR>
<TD class="footerSubtext">
Evidence Management System
</TD>
</TR>
<!-- For development builds, change the date accordingly when sending EAR files out to Wal-Mart -->
<TR>
<TD class="footerSubtext">
Build: v3.1
</TD>
</TR>
</TABLE>
</TD>
</TR>
</TABLE>
</HTML>
我还有什么其他选择?
PS:当我尝试使用手动保存文件时CTRL+Shift+S
,文件将保存确定。
从似乎只是HTML错误页面的错误响应中:
alert(“会话超时。请重新登录。\ n’);
因此,似乎需要在有效的HTTP会话中下载PDF文件。HTTP会话由cookie支持。HTTP会话反过来通常在服务器端包含有关当前活动和/或已登录用户的信息。
Selenium Web驱动程序自身完全透明地管理cookie。您可以通过编程方式获取它们,如下所示:
Set<Cookie> cookies = driver.manage().getCookies();
当手动摆弄java.net.URL
Selenium的外部控制时,您应该确保自己自己,URL连接使用的是相同的cookie(并因此也维持相同的HTTP会话)。您可以在URL连接上设置cookie,如下所示:
URLConnection connection = new URL(driver.getCurrentUrl()).openConnection();
for (Cookie cookie : driver.manage().getCookies()) {
String cookieHeader = cookie.getName() + "=" + cookie.getValue();
connection.addRequestProperty("Cookie", cookieHeader);
}
InputStream input = connection.getInputStream(); // Write this to file.
问题内容: 嘿,我正在使用一个具有如下登录对话框的Web应用程序: 用户点击“登录” 登录表单HTML随AJAX一起加载,并在第DIV页上显示 用户在字段中输入用户/密码,然后单击提交。不是-用户/密码通过AJAX提交 如果用户/密码正确,则页面将在用户登录后重新加载。 如果用户/密码不正确,则不会重新加载页面,但DIV中会显示错误消息,并且用户可以重试。 问题出在这里:浏览器从不提供通常针对其他
问题内容: 我有一些登录信息,比如说用户名,登录电子邮件ID和位置。 即使在用户注销并关闭窗口后,我也希望将此信息保留在浏览器中。 这样,当用户在注销或会话期满后返回时,Web应用程序将填写客户端用户名,并要求用户输入密码。 我要求的最好的例子是Google登录。! 目前,我只使用会话,不使用cookie。 有什么可能的解决方案? 问题答案: LocalStorage被认为是在浏览器中永久存储值的
我正在做一个画布绘制项目。我将画布转换为图像,然后将该图像另存为“”。巴布亚新几内亚'。我必须右键单击图像并选择“将图像另存为”选项。但我想通过一个按钮提供这个选项。当我点击按钮时,它应该被保存。 任何例子或想法都将不胜感激。 这是一个js函数,用于将画布转换为png。
我第一次使用JSON Web令牌(JWT)。我正在制作一个节点。js应用程序。我想使用JWT进行身份验证。根据文档,我将JSON令牌返回到前端。 但是我不知道如何将这个JSON令牌保存到我的浏览器头中,这样它就不会丢失,并随头一起再次发送到后端。如何将它保存在我的浏览器存储中,并在每次向后端发送请求时将其添加到请求头中?
现在如何将此保存到浏览器。
问题内容: 我需要停止浏览器存储用户名和密码值,因为我正在处理包含更多安全数据的Web应用程序。客户要求我这样做。 我尝试了HTML表单和密码字段中的属性。但它无法在最新的浏览器(例如Chrome 55,Firefox 38+,IE 11等)中运行。 最好的解决方案是什么? 问题答案: 感谢您给我回复。我点击了以下链接 禁用浏览器的“保存密码”功能 我通过仅在输入中添加&属性来解决此问题,如下所示