Получите PostData как в FireBug - PullRequest
3 голосов
/ 29 мая 2011

Кто-нибудь, помогите мне, как получить Заголовки и PostData внутри расширения, используя xpcom / что-то еще? я не могу найти функции внутри firebug, потому что это большая база кода ... спасибо, ребята

Ответы [ 2 ]

0 голосов
/ 24 июня 2011

Владимир подходит для заголовков.Для данных POST вот пара фрагментов кода с более подробной информацией:

https://developer.mozilla.org/en/Code_snippets/Miscellaneous#Getting_postData_of_a_webpage

0 голосов
/ 06 июня 2011

Я предполагаю, что вы хотите заголовки запроса, а не заголовки ответа. Затем вы регистрируете наблюдателя для уведомления http-on-modify-request. Общая документация: https://developer.mozilla.org/en/Observer_Notifications#HTTP_requests, пример кода можно найти в https://developer.mozilla.org/en/Creating_Sandboxed_HTTP_Connections#Handling_cookies. Получить заголовки легко, просто позвоните nsIHttpChannel.getRequestHeader().

Получение заголовков ответа аналогично, но вам необходимо прослушать http-on-examine-response уведомление и, вероятно, http-on-examine-cached-response.

Данные POST сложны. Вы можете получить поток загрузки как httpChannel.QueryInterface(Components.interfaces.nsIUploadChannel).uploadStream. Но поток может быть прочитан только один раз - это либо вы, либо код, отправляющий данные на сервер. Таким образом, вам нужно заменить поток чем-то, что выглядит идентично, но позволяет вам посмотреть на него - вероятно, nsIInputStreamTee, где вы устанавливаете исходный поток как источник, а nsIPipe как приемник. Не уверен, что этот подход выбран Firebug.

...