Re: httpcall result

От: Oleg Shumsky <CGatePro_at_mx_ru>
Дата: Tue 07 Mar 2006 - 13:36:46 MSK

Здравствуйте.

>> Что реально пишет CGI скрипт? Какой Content-type у ответа?
>>
>>> Что мне нужно сделать в CG/PL, чтобы получить из этого удобоваримую
>>> строку ? ObjectoText(params.body) возвращает тоже самое. TextToObject
>>> возаращает пустую строку.
>>
>
> HTTPCall не возвращает строки. [<base64>] - это представление
> datablock. То есть он возвращает datablock.
>
> Например, если вы возвращаете audio/wav - то такой datablock можно
> отдать функции PlayFile(). А если вы вернули какой-то текст, то
> datablock можно превратить в текстовую "строку" функцией String().

Либо я делаю что-то не так, либо не работает.

вот команды в cg/pl:

  paramshttp = NewDictionary();
  syslog(paramshttp);
  resulthttp = HTTPCall("http://xx.xx.xx.xx/cgi-bin/test.cgi",paramshttp);   if resulthttp != null then
    syslog(resulthttp);
    syslog(String(resulthttp.body));
  else
    syslog("HTTP Error Result: " + resulthttp);   end if;

Вот лог:

13:21:23.01 5 HTTPO-00055 inp: HTTP/1.1 200 OK

13:21:23.01 5 HTTPO-00055 inp: Date: Tue, 07 Mar 2006 10:21:22 GMT 13:21:23.01 5 HTTPO-00055 inp: Server: Apache/1.3.34 (Unix) mod_perl/1.29

13:21:23.01 5 HTTPO-00055 inp: Content-length: 3

13:21:23.01 5 HTTPO-00055 inp: Keep-Alive: timeout=15, max=100

13:21:23.01 5 HTTPO-00055 inp: Connection: Keep-Alive

13:21:23.01 5 HTTPO-00055 inp: Content-Type: text/html

13:21:23.01 5 HTTPO-00055
inp:

13:21:23.01 4 HTTPO-00055 suspending
protocol

13:21:23.01 2 PBXLEG-00416 ProgramLog:
{Content-Subtype=html;Content-Type=text;Date=#T07-03-2006_10:21:22;Server="Apache/1.3.34 (Unix) mod_
perl/1.29";body=[YT1i];responseCode=#200;}

апач на самом деле возвращает строку вида "a=b"

В body мы видим эту строку в base64.

в скрипте на cg/pl есть слудующая команда:

    syslog(String(resulthttp.body));

в логе мы видим

13:21:23.01 2 PBXLEG-00416 ProgramLog: "[YT1i]"

Вопрос: как мне получить "a=b" ?

-- 
Oleg V. Shumsky
Corbina Telecom NOC, VoIP Dept. Ph.: +7 495 7284000, ext. 2174, ICQ: 110474048
Получено Tue Mar 07 10:36:48 2006

Этот архив был сгенерирован hypermail 2.1.8 : Fri 24 Apr 2015 - 16:14:47 MSK