外部にファイルをアップロードする
kintone から外部サービスにファイルをアップロードします。
この API を利用すると、クロスドメイン制約を回避して、外部サービスにリクエストを送信できます。
関数
PC/モバイル
kintone.proxy.upload(url, method, headers, data, successCallback, failureCallback)
引数
引数 | 型 | 必須 | 説明 |
---|---|---|---|
url | 文字列 | 必須 | リクエスト URL |
method | 文字列 | 必須 | HTTP メソッド 次のいずれかの値を指定します。
|
headers | オブジェクト | 必須 | リクエストヘッダー 例: {何も指定しない場合は {} を指定してください。 |
data | オブジェクトまたは文字列 | 必須 | リクエストボディ |
data.format | 文字列 | 必須 | アップロードするファイルのフォーマット 「RAW」のみ指定できます。 |
data.value | Blob 型 (File 型を含む) | 必須 | アップロードするファイルのデータ 指定できるデータのサイズは、200MB までです。 |
successCallback | 関数 | 省略可 | リクエストが完了したときに実行されるコールバック関数 コールバック関数の引数には、次の情報が渡されます。
kintone.Promise オブジェクト が返り、レスポンスボディ、ステータスコード、レスポンスヘッダーが格納された配列で解決されます。 |
failureCallback | 関数 | 省略可 | リクエストが失敗した時に実行されるコールバック関数 省略すると、 kintone.Promise オブジェクト が返り、プロキシ API のレスポンスボディ(文字列)で棄却されます。 |
戻り値
successCallback
を指定した場合、戻り値はありません。
引数の successCallback
を省略した場合、
kintone.Promise
オブジェクト が返ります。
サンプルコード
コールバックを使った記述方法
|
|
kintone.Promise オブジェクトを使った記述方法
|
|
注意事項
- 利用できる「Content-Type」に制限はありません。
url
に存在しないサーバーを指定すると、ステータスコードが 503(DNS Cache Missing)のエラーが返ります。
制限事項
- この API を使って外部の API を実行しても、実行した API 先で発行されるべき Cookie は、自動で発行されません。
- 実行する外部 API のレスポンスヘッダーの上限は、100 行で、1 行あたりの最大長は 8,192bytes です。
- 実行する外部 API のレスポンスボディは、文字列のみ対応しています。画像などのバイナリデータは取得できません。
- 実行する外部 API のレスポンスボディの上限は 10MB です。上限を超えるとエラーになります。
- 自己証明書を使ったサーバーとの通信はできません。
- HTTP メソッドに POST または PUT を指定した場合、「Content-Length」ヘッダーと「Transfer-Encoding」ヘッダーは、自動で付加されます。
headers
に明示的に設定すると、エラーが発生します。