XML JavaScript

3132 ワード

0 x 01 XMLtpRequestオブジェクト
XMLHttpRequestオブジェクトは、POSTとHEAD要求と通常のGET要求を行う能力を含むHTTPプロトコルへの完全なアクセスを提供する.XMLHttpRequestは、同期または非同期的にWebサーバの応答に戻り、コンテンツをテキストまたはDOMドキュメントとして返すことができる.XMLドキュメントと一緒に使用することに限られていません.文書ドキュメントはどのような形式でも受信できます.
XMLHttpRequestオブジェクトはバックグラウンドでサーバとデータを交換するために使用されます.
  • は、ページを再読み込みしないでウェブページ
  • を更新する.
  • ページにロードされた後、サーバからデータを要求する
  • .
  • ページにロードされた後、サーバからデータを受信する
  • .
  • は、バックグラウンドでサーバにデータを送信する
  • .
    1.XMLHttpRequestオブジェクトを作成する:
    xmlhttp=null;
    if (window.XMLHttpRequest)
    {// code for all new browsers
    xmlhttp=new XMLHttpRequest();
    }
    else if (window.ActiveXObject)
    {// code for IE5 and IE6
    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
    
    2.属性
    readyState
    HTTP要求の状態.値は0から始まり、完全なHTTP応答を受信するまで、この値は4に増加する.
    状態
    名前
    説明
    0
    ユニトニック
    初期化状態XMLHttpRequestオブジェクトが作成されましたか?それともabort()メソッドにリセットされました.
    1
    Open
    OPEN()メソッドが起動されました.要求はまだ送信されていません.
    2
    サービス
    Send()メソッドが起動され、HTTP要求が送信され、応答が受信されていません.
    3
    Receiving
    すべての応答ヘッダが受信されました.応答体は受信を開始しましたが、完了していません.
    4
    Loaded
    HTTP応答は完全に受信されました.
    readyStateの値は、1つの要求が処理中にabort()またはopen()方法を起動しない限り、減少しない.この属性の値が増えるたびに、オンレディステージイベントの文脈が触発されます.
    レスポンスText
    これまでサーバーが受信した応答体(ヘッダを含まない)またはデータが受信されていない場合は空の文字列です.
    レスポンスXML
    要求に対する応答は、XMLに解析され、Dockmentオブジェクトとして返されます.
    status
    サーバから返されたHTTP状態コードは、200のように成功を表し、404は「Not Found」エラーを表している.readyStateが3未満の場合、この属性を読み込むと異常になります.
    status Text
    要求されたHTTPの状態コード.状態が200の時は「OK」です.状態が404の時は「Not Found」です.readyStateが3未満の場合、この属性を読み込むと異常になります.
    3.事件の原因
    オンreadystatechange readyState属性が変わるたびに呼び出すイベントのハンドル関数.readyStateが3の時には、何度も呼び出すことができます.
    abort()
    現在の応答をキャンセルして、接続を閉じて、未決のネットワークアクティビティを終了します.この方法はXMLHttpRequestオブジェクトをreadyStateが0の状態にリセットし、未決のネットワークアクティビティをすべてキャンセルする.
    get All ResonseHeaders()
    HTTP応答ヘッダを未解析文字列として返します.サーバから送信されたすべてのHTTP応答のヘッダを返します.頭を単一の文字列として返します.1行の頭.readyStateが3未満なら、この方法は戻ってきます.
    get ResonseHeader()
    指定されたHTTP応答ヘッダの値を返します.そのパラメータは、戻るHTTP応答ヘッダの名前です.大文字と小文字を区別しない.このヘッダを受信していない場合、またはreadyStateが3より小さい場合は空の文字列となります.
    open()
    HTTP要求パラメータを初期化します.例えば、URLやHTTP方法ですが、要求は送信されません.
    open(method,url,async,username,password)
  • method要求のHTTP方法.値はGET、POST、およびHEADを含む.
  • urlパラメータは要求の主体である.+ほとんどのブラウザは同じソースセキュリティポリシーを実施し、このURLはスクリプトを含むテキストと同じホスト名とポートを有することが要求される.
  • asyncパラメータ指示要求は、非同期的に実行されるべきである.このパラメータがfalseである場合、要求は同期され、その後のsend()への呼び出しは応答が完全に受信されるまでブロックされる.このパラメータがtrueであるか、または省略されている場合、要求は非同期であり、常にワンダシステムchangeイベントのハンドルが必要である.
  • usernameおよびpasswordパラメータはオプションであり、urlに必要なライセンスに認証資格を提供する.指定された場合は、url自身が指定した資格をカバーします.
  • send()はHTTP要求を送信し、open()方法に渡すパラメータと、この方法に渡すオプションの要求体を使用する.
    send(body)
  • bodyパラメータは、1つの文字列またはDcumentオブジェクトとして要求体を指定しています.(open()で指定されたHTTPメソッドを呼び出すとPOSTまたはPUTです.)要求体の調子が悪いなら、このパラメータはnullです.
  • set Request Header()は、開いているが、送信されていない要求設定またはHTTP要求を追加する.
    set Request Header(name,value)
  • nameパラメータは、設定するヘッダの名前です.このパラメータは空白、コロン、または改行を含むべきではありません.
  • valueパラメータはヘッダの値です.このパラメータは改行を含めてはいけません.
  • いくつかの要求ヘッドは、HTTPプロトコルに適合するようにXMLttpRequestによって自動的に設定されていません.
    XMLHttpRequest.open()HTTP要求パラメータを初期化する
    転載は出典を明記してください.