TCPIP.HTTP_GET_FILE()

Функция TCPIP.HTTP_GET_FILE("http://www.yyy.com","file_to_write") создает новый поток. Поток читает данные с WWW сервера:

  1. Вы можете загружать страницы по протоколу HTTPS - в процессе загрузки появится диалог выбора сертификата
  2. Вы можете загружать страницы, защищенные базовой аутентификацией. Два варианта: Вы можете явно задать username/password в строке URL(protocol://username:password@hostname/path_to_file), или воспользоваться автоматически выводимым окном диалога.
  3. Когда поток завершается, он ищет в Вашем скрипте функцию с именем WM_GETFILE(ThreadId, error). Если находит, то запускает ее (callback function). Коды HTTP статусов доступны на MSDN (~HTTP_STATUS_OK == 200), в случае ошибки доступа к файлу - будет возвращен стандартный системый код ошибки.
  4. Возвращаемые значения: ThreadId в случае успешного создания потока, если поток не был создан - вернет 0.
Пример загрузки дефолтной страницы www.google.com:
// File: http_get.w_js
Window.AppendMenu(0,"MF_STRING",100,"Get file");
Window.DrawMenuBar();


function WM_COMMAND(id) {
if (id == 100) {
    var ThreadId = TCPIP.HTTP_GET_FILE("http://www.google.com", 
                                       "c:\\google.html");
    Window.MessageBox("Trace","ThreadId: " + ThreadId, 64);
};
};

function WM_GETFILE(ThreadId, error)
{Window.Delete(1);
 Window.TextOut(1,50,50,"ThreadId: " + ThreadId);
 Window.TextOut(1,50,70,"error: " + error);
 Window.UpdateWindow();
};
'VBScript
Window.AppendMenu 0,"MF_STRING",100,"Get file"
Window.DrawMenuBar

Function WM_COMMAND(id) 
If (id = 100) Then
 ThreadId = TCPIP.HTTP_GET_FILE("http://www.google.com", "c:\google.html")
 Window.MessageBox "Trace","ThreadId: " & ThreadId, 64 
End If
End Function

Function WM_GETFILE(ThreadId, err)
 Window.Delete(1)
 Window.TextOut 1,50,50,"ThreadId: " & ThreadId
 Window.TextOut 1,50,70,"error: " & err
 Window.UpdateWindow
End Function
содержание
Дополнительный хост скриптов
JScript and VBScript are either registered trademarks or trademarks of Microsoft Corporation in the United States and/or other countries.