プラグインから外部にファイルをアップロードする
プラグインから外部サービスにファイルをアップロードします。
このAPIを利用すると、クロスドメイン制約を回避して、外部サービスにリクエストを送信できます。
認証情報など秘匿する情報を付与して外部APIを実行する場合は、APIを実行する前に、必要な情報をあらかじめプラグインに保存します。
プラグインに情報を保存、取得するAPIは、次のページを参照してください。
関数
PC/モバイル
kintone.plugin.app.proxy.upload(pluginId, url, method, headers, data, successCallback, failureCallback)
引数
引数 | 型 | 必須 | 説明 |
---|---|---|---|
pluginId | 文字列 | 必須 | APIを実行するプラグインのID |
url | 文字列 | 必須 | リクエストURL |
method | 文字列 | 必須 | HTTPメソッド 次のいずれかの値を指定します。
|
headers | オブジェクト | 必須 | リクエストヘッダー 何も指定しない場合は {} を指定します。 |
data | オブジェクト | 必須 | リクエストボディ |
data.format | 文字列 | 必須 | proxy先へデータをアップロードするときのフォーマット 「RAW」のみ指定できます。 |
data.value | Blob型(File型も含む) | 必須 | アップロードするデータ アップロードするファイルのデータ 指定できるデータのサイズは、200MBまでです。 |
successCallback | 関数 | 省略可 | リクエストが完了したあとに実行する関数 関数の引数には、次の3つの情報が渡されます。
kintone.Promise オブジェクトが返り、上記のレスポンスボディ、ステータスコード、レスポンスヘッダーが格納された配列で解決されます。kintone.Promise オブジェクト
|
failureCallback | 関数 | 省略可 | リクエストが失敗した場合に実行する関数 関数の引数には、実行したAPIのレスポンスボディ(文字列)が渡されます。 省略した場合は kintone.Promise オブジェクトが返り、実行したAPIのレスポンスボディ(文字列)で棄却されます。kintone.Promise オブジェクト
|
戻り値
successCallback
を指定した場合、戻り値はありません。
引数のsuccessCallback
を省略すると、kintone.Promise
オブジェクトが返ります。
kintone.Promise
オブジェクト
利用できる画面
PC
- レコード一覧画面
- レコード詳細画面
- レコード追加画面
- レコード編集画面
- レコード印刷画面
- グラフの画面
モバイル
- レコード一覧画面
- レコード詳細画面
- レコード追加画面
- レコード編集画面
サンプルコード
コールバックを使った記述方法
|
|
kintone.Promiseオブジェクトを使った記述方法
|
|
注意事項
- 存在しないサーバーを
url
に指定した場合、ステータスコード「503」(DNS Cache Missing)のエラーが返ります。 - IPアドレス制限を設定している場合、このJavaScript APIを使って同一ドメインの別アプリに対しkintone REST APIを実行するには、kintoneのIPアドレスを許可してください。
IPアドレスの詳細は、次のページを参照してください。
cybozu.comが使用するドメインとIPアドレス
ただし、外部APIを実行するAPIを通じてすべてのkintone環境から自由にアクセスできるようになるため、セキュリティの観点から推奨していません。 - このAPIを使って外部のAPIを実行しても、実行したAPI先で発行されるべきCookieは、自動で発行されません。
- HTTPメソッドにPOSTまたはPUTを指定した場合、「Content-Length」ヘッダーと「Transfer-Encoding」ヘッダーは、自動で付加されます。
リクエストするときに明示的に指定すると、エラーが発生します。
制限事項
- 実行する外部APIのレスポンスに関する制限は、次のとおりです。
- レスポンスヘッダーの上限は、100行で、1行あたりの最大長は8,180bytesです。
- レスポンスボディの上限は10MBです。上限を超えるとエラーになります。
- レスポンスボディは文字列のみ対応しています。画像などのバイナリデータは取得できません。
- 自己証明書を使ったサーバーとの通信はできません。
- 対象のブラウザーは、次のページの内容に準じます。
動作環境のWebブラウザー