Слушатель событий jQuery для данных POST, которые не запрашиваются jQuery - PullRequest
2 голосов
/ 09 октября 2011

Я взломал Jappix Mini. Я хочу использовать существующий XMPP поверх BOSH, чтобы получить правильный эффект и иметь нужный продукт для будущего развития. Я могу скрыть фактический интерфейс через CSS, выбрать имя пользователя для отправки и ввести сообщение для отправки. , все это работает хорошо, и я собираю изменения в теперь скрытом div и добавляю открытый текст в div на моей странице, полностью отделенный от пользовательского интерфейса Jappix Mini, каждые 50 мс с таймером window.setInterval, но я не хочу использовать этот метод для производства. Я знаю сообщения, которые я отправляю другим пользователям, но мог бы воссоздать данные POST, если бы мне было нужно, и выполнить запрос POST из jQuery. , .Только что не нужно в текущий момент времени.

Мне нужен способ заставить jQuery прослушивать входящие сообщения от других пользователей - если я могу перехватывать данные POST по мере их поступления, я могу обновлять только по мере необходимости.

Ответ (через Chrome Ctrl + Shift + I), который я хочу захватить:

 <body xmlns='http://jabber.org/protocol/httpbind'><message xmlns="jabber:client" to="(myAccount)@(myDomain).com/Jappix Mini (1318160212950)" type="chat" id="33" xml:lang="en" from="thisishidden@(conferenceServerAddress)/(nicknameOfRecipient"><body>this is a test</body></message></body>

Вот заголовки POST:

 Request URL:http://(machineWithOpenfire)/http-bind/
 Request Method:POST
 Status Code:200 OK

 POST /http-bind/ HTTP/1.1

 Host: ubuntu
 Connection: keep-alive
 Content-Length: 141
 Origin: http://(webserver/localhost)
 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.202 Safari/535.1
 Content-Type: text/xml; charset=UTF-8
 Accept: */*
 Referer: http://(webserver)/test/index4.php
 Accept-Encoding: gzip,deflate,sdch
 Accept-Language: en-US,en;q=0.8
 Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
 Cookie: pma_lang=en; pma_mcrypt_iv=74ajr%2FGepsQ%3D; PHPSESSID=71vht8hngec8r5nba8m7uk17p2; JSESSIONID=ahhew73q40f2

Полезная нагрузка:

 <body xml:lang='en' rid='785696' sid='e96dfc09' xmlns='http://jabber.org/protocol/httpbind' key='eb20cd86dee9cb99416f1a8521c2d9f09852f490' />

заголовки ответа:

 HTTP/1.1 200 OK

 Server: nginx/0.8.54
 Date: Sun, 09 Oct 2011 12:38:42 GMT
 Content-Type: text/xml;charset=UTF-8
 Connection: keep-alive
 Content-Length: 300

Извините, если я не имею смысла, или если ответ очевиден - я слишком долго не мог думать прямо!

Спасибо всем, кто может мне помочь! В идеале я хотел бы что-то вроде:

PostObject onChange do function ( dataResponse ){
      addANewDivToASeries with Sender's Name, Message from dataResponse
}

1 Ответ

1 голос
/ 27 декабря 2012

Найдите функцию handleMessageMini в файле mini.js.Просто измените это, если вы хотите получить доступ к сообщению.Jappix будет обрабатывать получение его при отправке.

...