AdvancedHTTPプラグイン
最終更新
役に立ちましたか?
最終更新
役に立ちましたか?
テスト環境 ( バージョン番号 ) :
このプラグインでは、グローバルオブジェクト「cordova.plugin.http
」のAPIを使用し、HTTPサーバーとの通信を行います。
このオブジェクトは、グローバルスコープに属していますが、使用できるのは、deviceready
イベントの発火後になります。
Monaca クラウド IDE から設定 → Cordova プラグインの管理
を選択します。
利用可能なプラグイン 項目の AdvancedHTTP
プラグインにカーソルを置き、有効
ボタンをクリックします。
iOSやAndroidのネイティブ機能を用いてHTTP通信を行います。
Javascript でfetch API
などを用いた場合に比べて以下のような利点があります。
CORSエラーの回避
以下の基本的なAPIについて解説します。
sendRequest
setDataSerializer
get
post
指定したurl
にHTTPリクエストを送信します。
options
に様々なパラメータを設定します。
method
: HTTPメソッド
headers
: HTTPヘッダ
param
: クエリ文字列(主にgetメソッドで使用)
data
: リクエストボディのデータ。形式はserializerで指定(post,putなどのメソッドで使用)
serializer
: データ形式の指定。詳細は後述のsetDataSerializer
参照
success
: 成功時のコールバック
error
: エラー時のコールバック
例
送信するデータの形式を指定します。
sendRequest API
の options.serializerで指定するのと同等です。
POST/PUT/PATCHメソッドに対応しています。
指定できる値:
"urlencoded"
"json"
"utf8"
"multipart"
"raw"
例1: serializer
="urlencoded"
key1=123
, key2=abc
の値がフォームデータとして送信されます。(Content-Type: application/x-www-form-urlencoded
での送信に相当)
例2: serializer
="json"
リクエストボディにJSONデータを載せて送信します。
GETリクエストを送信します。
sendRequest API
でmethod: "get"
を指定した場合と同等の機能です。
第2引数にクエリ文字列を指定します。
例
POSTリクエストを送信します。
sendRequest API
でmethod: "post"
を指定した場合と同等の機能です。
第2引数にデータを指定します。データの送信形式はsetDataSerializer API
で指定します。
例
AdvancedHTTP
プラグインにはその他にも様々なAPIが用意されています。
put / patch / delete / head / options
uploadFile / downloadFile
getBasicAuthHeader
useBasicAuth
setRequestTimeout
setConnectTimeout (Android Only)
setReadTimeout (Android Only)
setFollowRedirect
getCookieString
setCookie
clearCookies
setServerTrustMode
setClientAuthMode
removeCookies
例: POSTリクエストを送信する場合
fetch API
AdvancedHTTP
この記事に記載されたサンプルコードを実装したアプリケーションを公開しています。 Monacaにプロジェクトをインポートしてご利用ください。
その他のパラメータについては参照
その他のデータ形式についてはを参照してください。
これらのAPIの詳細についてはを参照してください。