2009-11-19 21 views
7

Làm cách nào để đặt tiêu đề HTTP trong tiện ích mở rộng của Firefox?Đặt tiêu đề HTTP từ tiện ích mở rộng của Firefox

Tôi sẽ làm cho nó để chỉ được gửi trong khi nhấn trang web của tôi để tôi có thể phát hiện xem plugin có được cài đặt hay không và không quảng bá plugin nếu có.

Trả lời

7

Đây là cách nhỏ gọn nhất mà tôi tìm thấy để làm cho công việc này:

Components.classes["@mozilla.org/observer-service;1"].getService(Components.interfaces.nsIObserverService).addObserver({ 
    observe : function(subject, topic, data) { 
      var channel = subject.QueryInterface(Components.interfaces.nsIHttpChannel); 
      if (/mysite/.test(channel.originalURI.host)) { 
       channel.setRequestHeader("x-mysite-extended", "true", false); 
      } 
    } 
},"http-on-modify-request",false); 
+0

Nếu bạn muốn biết thêm thông tin về vấn đề này: http://www.softwareishard.com/blog/firebug/nsitraceablechannel-intercept-http-traffic/ –

5

Có một vài tiện ích mở rộng Firefox hiện có sửa đổi tiêu đề HTTP trên đường đến máy chủ và ít nhất một trong số chúng, modifyheaders, có open source code.

Hoặc, tất nhiên, có trang liên quan trong Trung tâm nhà phát triển Mozilla, Setting HTTP request headers.

+0

Cảm ơn delfuego. Tôi đã đọc điều đó nhưng không thể tìm ra cách để nó hoạt động. Cuối cùng có một người bạn để giúp tôi ra và dựa trên kinh nghiệm của mình và các tài liệu bạn đề nghị chúng tôi giải quyết nó. – luisgo

Các vấn đề liên quan