-
Notifications
You must be signed in to change notification settings - Fork 5
DataAPI SDK japanese MT.DataAPI Implementation notes
ブラウザが FormData オブジェクトをサポートしている場合には、DataAPI オブジェクトは全てのリクエストを FormData オブジェクトを利用して送信します。結果として、全ての POST リクエストは "multipart/form-data" の形式で送信されます。
ブラウザが FormData オブジェクトをサポートしていない場合には、DataAPI オブジェクトは "application/x-www-form-urlencoded" の形式で送信します。
"cache" オプションが真の場合には、DataAPI はシンプルにリクエストを送信します。
"cache" オプションが偽の場合には、DataAPI はパラメータに"_"を付加してリクエストを送信します。"_"の値には現在の時刻(ミリ秒)が指定されます。
"crossOrigin" オプションが真の場合、または "crossOrigin" オプションが指定されておらずかつ現在の URL と baseUrl のオリジンが異なる場合には、DataAPIオブジェクトはクロスオリジン向けの設定でリクエストを送信します。影響を受ける動作は具体的には以下の2点です。(クロスオリジンのリクエストを受け付けるためにはサーバー側で "DataAPICORSAllowOrigin" などの設定を行う必要があります。)
同じオリジンの場合には X-Requested-With リクエストヘッダとして XMLHttpRequest を送信しますが、クロスオリジンのリクエストの場合には送信しません。
IE8 や IE9 の XMLHttpRequest ではクロスオリジンのリクエストを送信することができないので、DataAPI オブジェクトは XDomainRequest を利用してリクエストを送信します。ただこの時 XDomainRequest ではリクエストヘッダを追加することができないため、ユーザー認証を伴うリクエストは送信することができません。(ユーザー認証を伴うリクエストを送信しようとすると例外が発生します。)