2

我正在尝试获取一个 Firefox 插件来从 HTTP 获取中读取数据,解析结果并将它们作为链接呈现在类似书签的下拉菜单中。

那么我的问题是:有没有人有任何示例代码可以做到这一点?

4

2 回答 2

2

我自己从来没有开发过,我不确定这通常是如何在 Firefox 插件中完成的,但由于插件脚本是 JavaScript,我可能可以帮助加载部分。假设一个名为 url 的变量包含您要请求的 URL:

var xmlhttp = new XMLHttpRequest();
xmlhttp.open("GET", url, true);

xmlhttp.onreadystatechange = function() {
    if(this.readyState == 4) { // Done loading?
        if(this.status == 200) { // Everything okay?
            // read content from this.responseXML or this.responseText
        } else { // Error occurred; handle it
            alert("Error " + this.status + ":\n" + this.statusText);
        }
    }
};

xmlhttp.send(null);

关于这段代码的几点说明:

  • 您可能需要更复杂的状态代码处理。例如,200 不是唯一的非错误状态代码。可以在此处找到有关状态代码的详细信息。
  • 您可能希望有一个超时来处理由于某种原因您没有在合理的时间内到达 readyState 4 的情况。
  • 当收到较早的 readyStates 时,您可能想要做一些事情。此页面记录了 readyState 代码以及 XMLHttpRequest 对象上的其他属性和方法,您可能会发现它们很有用。
于 2008-09-02T17:57:34.917 回答
0

Robert Walker 在描述如何发送请求方面做得很好。您可以在此处阅读有关Mozilla 的 xmlhttprequest 的更多信息。

我只想补充一点,可以使用(使用罗伯特的代码)找到响应

 xmlhttp.responseText

编辑 - 我没有仔细阅读,谢谢罗伯特

尽管您提到要解析数据中的链接,但您没有确切说明数据是什么。您可以将 xmlhttp.responseText 作为 xml 文档,解析出链接,并将其放入菜单列表或您喜欢的任何内容中。

于 2008-09-12T03:53:03.973 回答