【问题标题】:HTTP post in iMacros with Javascript for Firefox使用 Firefox 的 Javascript 在 iMacros 中发布 HTTP
【发布时间】:2013-11-25 13:17:32
【问题描述】:

我正在制作一个自动化脚本来从网站中提取一些信息,并且使用 POST 方法提交一些信息很重要。谁能告诉我如何将 HTTP Post 方法与 Imacro 和 javascript 一起用于 firefox 插件。下面是我在这里找到的脚本:Sending an HTTP Post using Javascript triggered event 但是当我使用 Imacro 播放器播放相同的内容时,它给了我错误。

var url = "http://www.google.com/";
var method = "POST";
var postData = "Some data";
var async = true;

var request = new XMLHttpRequest();
request.onload = function () {
var status = request.status; // HTTP response status, e.g., 200 for "200 OK"
var data = request.responseText; // Returned data, e.g., an HTML document.
}

request.open(method, url, async);

request.setRequestHeader("Content-Type", "application/json;charset=UTF-8");
request.send(postData);

标签: javascript firefox imacros


【解决方案1】:

firefox 15+ 不再支持XMLHttpRequest()

你必须定义它:

const XMLHttpRequest = Components.Constructor("@mozilla.org/xmlextras/xmlhttprequest;1");
var request = XMLHttpRequest();

【讨论】:

    【解决方案2】:

    要在 iMacros 中运行 JavaScript,您可以使用此方法。

    URL GOTO=javascript:window.ScrollTo(0,150);
    

    试试这个方法。

    在你的情况下,它看起来像这样。

    URL GOTO=javascript:var url = "http://www.google.com/";var method = "POST";var postData = "Some data";var async = true;var request = new XMLHttpRequest();request.onload = function () var status = request.status; var data = request.responseText; request.open(method, url, async);request.setRequestHeader("Content-Type", "application/json;charset=UTF-8");request.send(postData);
    

    【讨论】:

    • 谢谢IceD,但是请您用实际代码详细说明一下。
    • 你去。但我不知道这段代码是否有效,因为我没有测试它。
    • 试试这个解决方案。我注意到它与您的问题有相似之处。 stackoverflow.com/questions/11579587/…
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多