[PHP] Отправка данных в формате AMF

Discussion in 'PHP' started by VKVOLK, 10 Nov 2010.

  1. VKVOLK

    VKVOLK Member

    Joined:
    22 Sep 2010
    Messages:
    7
    Likes Received:
    7
    Reputations:
    5
    Снифером перехвачен post-запрос в формате AMF:

    Code:
    00 03 00 00 00 01 00 0D 53 65 72 76 69 63 65 2E |         Service.
    6C 6F 67 69 6E 00 02 2F 31 00 00 00 3E 0A 00 00 | login  /1   >   
    00 03 02 00 08 39 36 30 33 30 32 33 35 02 00 20 |      1   
    37 62 61 31 36 30 34 36 30 30 39 64 66 62 38 37 | 7ba16046009dfb87
    64 66 37 30 38 37 63 34 31 34 30 39 38 31 36 64 | df7087c41409816d
    02 00 08 39 36 30 33 30 32 33 35                |    1     
    
    Как реализовать такой запрос на PHP?
     
  2. SHiNiGaMi

    SHiNiGaMi Banned

    Joined:
    3 Jan 2010
    Messages:
    382
    Likes Received:
    55
    Reputations:
    15
    открывай сокет и лей это потоком байт
     
  3. VKVOLK

    VKVOLK Member

    Joined:
    22 Sep 2010
    Messages:
    7
    Likes Received:
    7
    Reputations:
    5
    Можно пример?
     
  4. destruktiv

    destruktiv New Member

    Joined:
    24 Sep 2010
    Messages:
    17
    Likes Received:
    0
    Reputations:
    0
    SHiNiGaMi, по моему так нельзя в php
    ТС, дай конкретный сайт
     
  5. VKVOLK

    VKVOLK Member

    Joined:
    22 Sep 2010
    Messages:
    7
    Likes Received:
    7
    Reputations:
    5
    destruktiv, прила вк на флеше. Нужно автоматизировать процесс
     
  6. ViLKaa

    ViLKaa Member

    Joined:
    24 Jul 2009
    Messages:
    41
    Likes Received:
    7
    Reputations:
    5
    какая прила.
     
  7. VKVOLK

    VKVOLK Member

    Joined:
    22 Sep 2010
    Messages:
    7
    Likes Received:
    7
    Reputations:
    5
    ViLKaa, http://vkontakte.ru/app1711141
     
  8. destruktiv

    destruktiv New Member

    Joined:
    24 Sep 2010
    Messages:
    17
    Likes Received:
    0
    Reputations:
    0
    Ммм.... а я то надеялся что можно без amf :-( На php с amf тока сторонними библиотеками можно загляни на amfphp.org пример дать не смогу т. к. сам не пользовался.
     
  9. VKVOLK

    VKVOLK Member

    Joined:
    22 Sep 2010
    Messages:
    7
    Likes Received:
    7
    Reputations:
    5
    destruktiv, я его смотрел уже. Там вроде для получения данных от flash, а не отправки
     
  10. destruktiv

    destruktiv New Member

    Joined:
    24 Sep 2010
    Messages:
    17
    Likes Received:
    0
    Reputations:
    0
    Ой сори кажись на меня приступ идиотизма нашел SHiNiGaMi прав
    это будет выглядеть как-то так(это на коленках так что проверки всякое такое сам доделай):
    $fp = fsockopen($url, 80);
    fwrite($fp, $hex);
    fclose ($fp);
     
  11. ViLKaa

    ViLKaa Member

    Joined:
    24 Jul 2009
    Messages:
    41
    Likes Received:
    7
    Reputations:
    5
    ты сажи что хочешь сделать я на шарпе напишу. бота чтоле?
     
  12. SHiNiGaMi

    SHiNiGaMi Banned

    Joined:
    3 Jan 2010
    Messages:
    382
    Likes Received:
    55
    Reputations:
    15
    PHP:
    <?php
    $fsock 
    fsockopen ("www.example.com"80$errno$errstr30);
    if (!
    $fsock)
      echo 
    "$errstr ($errno)<br>\n";
    else
    {
      
    fputs ($fsock"00 03 00 00 00 01 00 0D 53 65 72 76 69 63 65 2E |         Service.
    6C 6F 67 69 6E 00 02 2F 31 00 00 00 3E 0A 00 00 | login  /1   >   
    00 03 02 00 08 39 36 30 33 30 32 33 35 02 00 20 |      1   
    37 62 61 31 36 30 34 36 30 30 39 64 66 62 38 37 | 7ba16046009dfb87
    64 66 37 30 38 37 63 34 31 34 30 39 38 31 36 64 | df7087c41409816d
    02 00 08 39 36 30 33 30 32 33 35                |    1     "
    );
      while (!
    feof($fsock))
        echo 
    fgets ($fsock,128);
      
    fclose ($fsock);
    }
    ?>
    адрес и протокол смени на нужные
     
  13. VKVOLK

    VKVOLK Member

    Joined:
    22 Sep 2010
    Messages:
    7
    Likes Received:
    7
    Reputations:
    5
    Спасибо всем, кто пытался помочь.
    Отправляю данные в post через curl.
    Так работает

    Code:
    $post = "\0\3\0\0\0\1\0\x0dService.";
    $post .= "login\0\2\x2f\x31\0\0\0\x40";
    $post .= "\x0a\0\0\0\3\2\0\x9$id[1]\2\0\x20";
    $post .= "$auth_key[1]\2\0\x9$id[1]";
    
     
    2 people like this.