javascript - XMLHttpRequest POST 并在新窗口/标签中打开目标页面

标签 javascript firefox-addon firefox-addon-restartless

如何在 XMLHttpRequest 中使用 target="_blank" 模拟 Form 的 'POST' 操作? (即在新标签中发布数据和打开目标页面)

最佳答案

gBrowser 提供开箱即用的此功能。

var dataStream = Cc["@mozilla.org/io/string-input-stream;1"].createInstance(Ci.nsIStringInputStream);
dataStream.data = "foo=bar&alpha=beta"; // make sure the values are properly encoded with encodeURIComponent

var postStream = Cc["@mozilla.org/network/mime-input-stream;1"].createInstance(Ci.nsIMIMEInputStream);
postStream.addHeader("Content-Type", "application/x-www-form-urlencoded");
postStream.addContentLength = true;
postStream.setData(dataStream);

gBrowser.loadOneTab("http://www.example.com/", {inBackground: false, postData: postStream});

关于javascript - XMLHttpRequest POST 并在新窗口/标签中打开目标页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24776180/

相关文章:

javascript - LoDash:减少 Angular 返回 0

javascript - 如何在javascript中更改函数的上下文

javascript - XPCOM stub 文件

javascript - 使用 Firefox 附加组件 SDK 打开后台窗口

javascript - 初始选项卡不会触发打开的、就绪的事件

javascript - (使用 Javascript 对象进行实验)为什么我的函数在另一个函数中不起作用?

javascript - 如何使用JavaScript中的文件路径读取文件内容

javascript - 如果用户中断页面加载如何处理?

javascript - 通过addon脚本调用网页的Javascript函数

javascript - Firefox 插件 : Uploading Image