是否可以在iframe中提交表单而不影响浏览器的历史记录?
我已经实现了发送跨域POST请求。它使用Javascript在iframe中创建和提交表单。它可以工作,但是每个请求都会在浏览器的历史记录中添加一个项目。
有人知道解决这个问题的方法吗?我尝试使用innerHTML和createElement创建iframe。到目前为止,我还没有发现任何差异。
PS-我很想使用XMLHtttpRequest(“ Ajax”),但它不支持跨域发送数据。我很想使用GET而不是post,但是我需要发送超过2k的数据。
这是我的代码的一个版本。我已经尝试了许多变体并进行了全面搜索,但是我似乎找不到一个不会影响浏览器历史的解决方案。我相信这是不可能的-任何人都可以确认吗?
<html>
<head>
<script type="text/javascript">
function submit(params) {
var div = document.createElement('div');
div.innerHTML = '<iframe height="50" width="50"></iframe>';
document.body.appendChild(div);
var iframe = div.firstChild;
var iframeDocument = iframe.contentDocument || iframe.contentWindow.document;
iframeDocument.open();
iframeDocument.close();
var form = iframeDocument.createElement('form');
iframeDocument.body.appendChild(form);
form.setAttribute('action', 'http://some-other-domain.com/submit-here');
form.setAttribute('method', 'POST');
for (param in params) {
var field = iframeDocument.createElement('input');
field.setAttribute('type', 'hidden');
field.setAttribute('name', param);
field.setAttribute('value', params[param]);
form.appendChild(field);
}
form.submit();
}
window.onload = function() {
document.getElementById('button').onclick = function() {
submit({
'x' : 'Some Value',
'y' : 'Another Value',
'z' : new Date().getTime()
});
}
}
</script>
</head>
<body>
<h1>Example of using Javascript to POST across domains...</h1>
<input id="button" type="button" value="click to send">
</body>
</html>
使用JS添加src托管在您的站点(第三方托管的脚本需要向其发送数据的域)上的IFRAME是否起作用?此IFRAME可能包含用于向您的/它的XMLHttpRequest发出请求的Javascript。域。至于从第三方站点获取实际数据到该IFRAME的方法,请尝试:http : //softwareas.com/cross-domain-
communication-with-iframes
。这是一个非常聪明的解决方案,涉及在IFRAME
URL的末尾更改片段标识符(#something),然后您可以通过IFRAME中的JS进行读取。
这也是一个猜测,但是,如果您将上述过去的SO解决方案解决类似的历史记录问题(使用location.replace),希望可以让您在不中断历史记录堆栈的情况下进行更改锚点的操作。
问题内容: 我想执行一些命令,但不想将它们存储在命令历史记录中。这样,没人能在文件中搜索它。 有什么办法可以这样执行bash命令吗? 问题答案: 用空格开始命令,该命令不会包含在历史记录中。 请注意,这确实需要设置环境变量。 检查以下命令是否返回或 要添加缺少的环境变量,可以将以下行添加到bash配置文件中。例如 重新提供配置文件后,将不会将带有空格前缀的命令写入
读取播放历史信息 调用地址 http://api.bilibili.cn/history 返回 返回值字段 字段类型 字段说明 results int 返回的记录总数目 list object 返回数据 返回字段 “list” 子项 返回值字段 字段类型 字段说明 aid int 视频编号 typeid int 视频分类ID typename string 视频分类名称 title string
历史记录 控制台维护 Elasticsearch 成功执行的最后500个请求列表。点击窗口右上角的时钟图标即可查看历史记录。这个图标会打开历史记录面板,您可以在其中查看历史请求。您也可以在这里选择一个请求,它将被添加到编辑器中当前光标所在的位置。 图 9. 历史记录面板
3.3.1.1. 同步的文件历史记录 微力同步记录对文件的添加,修改、删除的操作记录,通过历史记录列表可查看时间时间及发生设备,如下: 事件时间,显示添加、修改、删除等操作发生的时间; 文件时间,显示该文件的最后修改时间; 操作类型,显示此次针对该文件所进行的操作的类型; 发生设备,显示进行此操作的设备名称; 目录,显示该文件所属同步目录; 清空历史记录,点击后可清除所有记录,此操作仅清除记录而已
问题内容: 有没有一种方法可以使用raw_input而不在读取行历史记录中留下符号,从而在制表符完成时不显示它? 问题答案: 你可以使一个函数像 并调用该函数而不是raw_input。您可能不需要负1,具体取决于您从何处调用它。
入口: 在路线规划右上角,有历史记录入口,无论“单路线规划”、“多路线规划”的结果,都会自动进行记录,点击进入该界面 在“路线规划”模块下展开二级模块“历史记录”,可以点击进入 历史记录列表 支持按照时间搜索记录 支持单个删除记录 支持一键删除全部记录 支持点击查看规划历史详情 历史详情 记录规划人、规划时间、规划结果 结果详情界面回放、支持点击查看