3

in でフォームの'POST'アクションをどのようにエミュレートしますか? (つまり、データを投稿し、ターゲット ページを新しいタブで開く)target="_blank"XMLHttpRequest

4

1 に答える 1

2

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});
于 2014-07-16T17:19:24.270 に答える