2008-12-31 22 views
5

Tôi đang cố gắng phát triển tiện ích mở rộng firefox chèn các trường tiêu đề HTTP bổ sung vào các yêu cầu HTTP gửi đi (để giao diện với phần mở rộng apache tôi đồng thời đang phát triển).Hỗ trợ người mới bắt đầu - Mã này thuộc về đâu?

Trong khi tôi hiểu các thành phần riêng biệt của phần mở rộng và hiểu các hướng dẫn cơ bản được trình bày trên web, tôi thấy khó khăn từ phần mở rộng hướng dẫn "Hello World".

Mã mẫu mà tôi muốn điều chỉnh cho mục đích của tôi được trình bày ở dưới cùng của Setting HTTP request headers.

Tôi tự hỏi, ở đâu trong hệ thống phân cấp mở rộng nên mã này được đặt và mã như thế được gọi là/được xây dựng/kích hoạt như thế nào, nó sẽ tự động chạy khi phần mở rộng được khởi tạo?



Xin cảm ơn trước.

+0

Bạn đã thử tìm kiếm một tiện ích mở rộng hiện có phù hợp nhất với những gì bạn đang cố gắng đạt được? Có thể là một sự khởi đầu ... – mark

Trả lời

2

Đối với tiện ích mở rộng cơ bản, bạn sẽ đặt mã của mình trong thư mục chrome/content của tiện ích. Bạn sẽ kết nối nội dung này vào Firefox bằng cách sử dụng overlay. Mặc dù lớp phủ thường là nội dung xul (các nút, v.v.) chúng có thể là bất kỳ thứ gì. Bao gồm thẻ tập lệnh sẽ kích hoạt mã Javascript của bạn.

0

Mã đó là thành phần XPCOM và đi vào tệp components/<some name>.js.

Bạn nên đọc các thành phần XPCOM nếu bạn muốn đào nó, nhưng có, tệp .js trong components được tải khi khởi động. Các tệp này chứa mã đăng ký (bắt đầu tại dòng var myModule = { trong ví dụ đó), cho Firefox biết thành phần được xác định trong tệp có sẵn khi có yêu cầu hay không hoặc nó sẽ được tự động khởi tạo.

Trong ví dụ bạn có thể thấy các thành phần nhận được đăng ký để được thông báo về khởi động của ứng dụng:

catMgr.addCategoryEntry("app-startup", this.myName, this.myProgID, true, true); 

và khi xử lý các thông báo ứng dụng khởi động nó tự đăng kí cho các thông báo http-on-sửa đổi-yêu cầu :

os.addObserver(this, "http-on-modify-request", false); 
Các vấn đề liên quan