HTTP

ページ取得
利用例


ページ取得
関数名HTTP_ReadHTML(strRequestMethodstrURL, [strAddHeader])
引数strRequestMethod
 リクエスト形式。
 'GET', 'POST', 'HEAD'が指定できます。

strURL
 取得するページのURL。パラメータもURLに含みます。
 http://mongoose.jp/test/test.php?param1=1&param2=2

strAddHeader
 追加ヘッダ。省略可
 連想配列のキーをヘッダ名、要素をその値として指定します。
 例:
 add_header['User-Agent'] = "Mongoose HTTP Client";
 add_header['Authorization'] = "Basic " + BASE64_Encode("mongoose-client:test");

戻り値正常にリクエストできた場合 true
それ以外 false
イベント正常にリクエストできた場合、以下のイベント変数がセットされイベントが発行されます。

共通
$result['URI']リクエストしたURI。リダイレクト後には、リダイレクト先のURIになります。
$result['HTTP']HTTPプロトコル。('1.0'または'1.1')
$result['Result']HTTPレスポンス。('200'、'404'など)
$result['Header']HTTPレスポンスヘッダ。取得したヘッダが全て入ります。
ヘッダ名は全て小文字化されます。
$result['Header']['CONNECTION'] → 'Close' など
$result['Redirect']リクエスト結果がリダイレクトの場合true、それ以外falseが入ります
trueの場合、$result['Header']['Location']にリダイレクト先が入っています。

GETまたはPOSTリクエスト
 $result['Body']に取得した行が全て入ります。
備考必要最低限のヘッダのみサーバに送信します。
リダイレクト時には、リダイレクト先のページ取得も行います。


利用例

add_header['User-Agent'] = "Mongoose HTTP Client";
add_header['Authorization'] = "Basic " + BASE64_Encode("mongoose-client:test");

HTTP_ReadHTML("POST", "http://mongoose.jp/test/test.php?a=1&b=2", add_header){
if ($result['Redirect']){
    // リダイレクトならリダイレクト先を表示
    println("Redirect: " + $result['Header']['Location']);
} else {
    // 現在のURI
    println("URI: " + $result['URI']);
    // HTTP バージョン
    println("HTTP: "  + $result['HTTP']);
    // リクエスト結果
    println("Result: "  + $result['Result']);
    // ヘッダの表示
    foreach($result['Header']){
        println($result['key'] + ": " + $result['data']);
    }
    // ボディの表示
    foreach($result['Body']){
        println($result['data']);
    }
}
}