Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Пытаюсь написать http tunneling нужна помощь. (http://www.flasher.ru/forum/showthread.php?t=130602)

Dragon rideR 29.09.2009 21:46

Пытаюсь написать http tunneling нужна помощь.
 
Народ есть задача написать http tunneling для сокетного соединения на as2. Есть собственный сокетный сервак и флэш клиент, все бы хорошо но у большинства юзеров злые прокси сервера.
Вот и встала задача написать http tunneling может у кого нить есть наработки по этой теме или интересные ссылочки?
P.S. Заранее спасибо

Котяра 01.10.2009 09:55

можно переписать на as2 класс
com.adobe.net.proxies.RFC2817Socket из
http://code.google.com/p/as3corelib/
PS: описание механизма туннелирования

Dragon rideR 01.10.2009 11:15

я так понимаю нужно внести изменения в метод connect, т.е. создаю класс наследник XMLSocket и добавляю функцию соединения типа такой:
Код AS1/AS2:

dynamic class testx extends XMLSocket {
        public function proxy_connect(p_url, p_port, url, port) {
                this.host=url;
                this.port=port
                this.onConnect=function(){
                        this.writeUTFBytes("CONNECT "+this.host+":"+this.port+" HTTP/1.1\n\n");
                        this.flush();
                        this.redirectConnectEvent();
                }
                connect(p_url, p_port);
        }
}

вопрос, чем заменить writeUTFBytes а AS2 я такой комманды не нашел

dimarik 01.10.2009 13:15

Код:

send (XMLSocket.send method)
Только вот есть мааааленькая неувязочка

Код:

onData (XMLSocket.onData handler)

Invoked when a message has been downloaded from the server, terminated by a zero (0) byte.


wvxvw 01.10.2009 13:31

Zero-byte в строке: "\x00" :)

writeUTFBytes - аналогично просто отпавке строки в UTF-8 кодировке без BOM. Я чесно не знаю, добавляет ли XMLSocket BOM всегда или нет - пробуйте.

dimarik 01.10.2009 13:58

Эм. Я к тому, что прокся по своей воле не пришлет "message, terminated by a zero (0) byte."

Dragon rideR 01.10.2009 14:45

народ а как добавить к строке символ переноса на новую строку CR LF
а то прокся соединение ловит принимает комманду CONNECT host:port HTTP/1.0\x00
но не хочет ее обрабатывать так как ждет продолжения строки походу
\n не канает

dimarik 01.10.2009 14:58

"\r\n"

mooncar 01.10.2009 14:59

Попробуйте
Код:

\r\n

Dragon rideR 01.10.2009 15:13

не прокатило (
если подключаюсь спец сокетным клиентом с включенной опцией добавлять cr lf все работает.
Походу это последняя преграда осталась.
уже испробовал:
\x0D\x0A
\x00\0\r?\n\r?\n$\e
\u000D\u000A

какие еще вариант передать конец строки?


Часовой пояс GMT +4, время: 10:34.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.