Range
例:oj.setRequestHeader("Range","bytes=500-999")
【説明】このテストと同じ。
【テスト内容】このテストをjslb_ajax039.jsのテストバージョンで書いてみます。
3つの関数で、すっきり書けるようになります。リクエスト、リクエストヘッダセット、受信用コールバックです。
sendRequest()の第一引数で、受信用コールバックと、リクエストヘッダセット用のコールバック関数の二つを渡せるようにしてみました。
JSONのオブジェクト形式で渡しますが、今まで通り受信用のコールバック関数を一つだけ書いても内部で処理して互換するようにしてあります。
【結果】このテストと同じ。
【メモ】このテストと同じ。
<meta http-equiv="content-script-type" content="text/javascript">
<meta http-equiv=Content-Type content="text/html; charset=utf-8">
<title>header Test</title>
<!-- Ajax簡易ライブラリ jslb_ajax.js
リクエストヘッダ追記テスト中v039
-->
<script languege = "JavaScript"
src = "../../jslb_ajax039-b2.js"
charset = "utf-8"></script>
<!-- ヘッダテスト用 -->
<script language = "JavaScript">
<!--
//リクエスト
sendRequest({
onload : on_loaded , //データ受信用コールバック
onbeforsetheader : setHeaders //ヘッダセット用コールバック
}, '','GET','./test.txt',true,true)
//リクエストヘッダセット用コールバック関数(送信直前にセットされます)
function setHeaders(oj){
//Rangeをセット 500バイト目~999バイト目までをリクエスト
oj.setRequestHeader("Range","bytes=500-999");
}
//データ受信用コールバック関数 ( 受信時に実行されます )
function on_loaded(oj)
{
//ステータスコード
status = "【ステータスコード】<br>"+oj.status
//レスポンスヘッダを取得
headers = "<br><br>【レスポンスヘッダ】<br>"+oj.getAllResponseHeaders().split('\n').join('<br>')
//レスポンスを取得
var res = "【サーバーから受信したtest.txtのデータ】<br>"+oj.responseText
//レスポンスされた文字列を表示
document.getElementById('outputdata').innerHTML=status+headers+res
}
//-->
</script>
<!-- ここへ出力 -->
<div id="outputdata"></div>
【サンプル】
【blog/Forums】
| JavaScript++かも日記 |