カテゴリー内の他の記事

外部APIの実行

フォローする

Index

外部のAPIを実行する

kintone から外部のAPIを実行できます。
外部にファイルをアップロードする際には、「外部にファイルをアップロードする」を参照ください。

  • PC用とスマートフォン用で利用できます。
  • proxyを通しても、proxy先のサイトに発行されるべきcookieは自動発行されません。

関数

kintone.proxy(url, method, headers, data, callback, errback);

引数

パラメータ名 指定する値 必須 説明
url 文字列 必須 リクエストURL
method 文字列 必須 HTTPメソッド。 GET,POST,PUT,DELETEのいずれかを指定。
headers オブジェクト 必須 リクエストヘッダをオブジェクトで表したものを指定。
何も指定しない場合は{}を指定します。
(例) {'Content-Type': 'application/json'}
data オブジェクトまたは文字列 必須 リクエストに載せるデータ。 何も指定しない場合は{}を指定します。
POST/PUTの場合のみ利用され、GET/DELETEの場合は無視されます。
GET/DELETEの場合、URLのQueryStringにパラメータを乗せる必要があります。
callback 関数 省略可

proxy先へのリクエストが完了したときに実行されるコールバック関数。
引数にproxy先からのレスポンスボディ(文字列)、ステータスコード(数値)、レスポンスヘッダ(オブジェクト)を受け取ります。
省略した場合はkintone.Promiseオブジェクトが返され、レスポンスボディ(文字列)、ステータスコード(数値)、レスポンスヘッダ(オブジェクト)が格納された配列で解決されます。

errback 関数 省略可

proxy APIへのリクエストが失敗したときに実行されるコールバック関数。
引数にproxy先からのレスポンスボディ(文字列)を受け取ります。
callbackを省略した場合はkintone.Promiseオブジェクトが返され、proxy APIのレスポンスボディ(文字列)で棄却されます。

返り値

引数のcallbackを省略した時、kintone.Promiseオブジェクトを返します。
参考: イベントハンドラを登録する

callbackを指定した場合返り値はありません。

 

サンプル

コールバックを使った記述方法

kintone.Promiseオブジェクトを使った記述方法

注意事項

  • urlで存在しないサーバーを指定した場合、レスポンスはステータスコード「503」(DNS Cache Missing)のエラーとなります。
  • テスト環境等で、IP制限をしている環境で接続元ドメイン内の別アプリにアクセスする場合は、以下のページに記載のIPアドレスを許可することでアクセス可能となります

kintone よくある質問
http://faq.cybozu.info/alphascope/cybozu/web/kintone/Detail.aspx?id=60

※ ただしkintone.proxyを利用して外部から自由にアクセス可能となるため、セキュリティの観点から推奨されません。接続元ドメインへのアクセスについては kintone.api をご利用ください。

制限事項

  • proxy先が返すレスポンスヘッダの上限は 100行となり、1行あたりの最大長は 8192bytesです。
  • proxy先が返すレスポンスボディの上限は 10MBです。
  • 上限を超えた場合はエラーとなります。

外部にファイルをアップロードする

kintone から外部にファイルをアップロードできます。

  • PC用とスマートフォン用で利用できます。
  • proxyを通しても、proxy先のサイトに発行されるべきcookieは自動発行されません。

関数

kintone.proxy.upload(url, method, headers, data, callback, errback);

引数

パラメータ名 指定する値 必須 説明
url 文字列 必須 リクエストURL
method 文字列 必須 HTTPメソッド。 POST,PUTのいずれかを指定。
headers オブジェクト 必須 リクエストヘッダをオブジェクトで表したものを指定。
何も指定しない場合は{}を指定します。
(例) {'Content-Type': 'application/json'}
data オブジェクト 必須 リクエストに載せるデータ。
{
    'format': proxy先へデータをアップロードするときのフォーマット,
    'value': アップロードするデータ
}
formatは文字列で、"RAW"のみ指定できます。
valueはBlob型 (File型を含む) の値。valueのサイズは200MBまでです。
callback 関数 省略可

proxy先へのリクエストが完了したときに実行されるコールバック関数。
引数にproxy先からのレスポンスボディ(文字列)、ステータスコード(数値)、レスポンスヘッダ(オブジェクト)を受け取ります。
省略した場合はkintone.Promiseオブジェクトが返され、(文字列)、ステータスコード(数値)、レスポンスヘッダ(オブジェクト)が格納された配列で解決されます。

errback 関数 省略可

proxy APIへのリクエストが失敗したときに実行されるコールバック関数。
引数にproxy先からのレスポンスボディ(文字列)を受け取ります。
callbackを省略した場合はkintone.Promiseオブジェクトが返され、proxy APIのレスポンスボディ(文字列)で棄却されます。

返り値

引数のcallbackを省略した時、kintone.Promiseオブジェクトを返します。
参考: イベントハンドラを登録する

callbackを指定した場合返り値はありません。 

サンプル

コールバックを使った記述方法

kintone.Promiseオブジェクトを使った記述方法

注意事項

  • urlで存在しないサーバーを指定した場合、レスポンスはステータスコード「503」(DNS Cache Missing)のエラーとなります。

制限事項

  • proxy先が返すレスポンスヘッダの上限は 100行となり、1行あたりの最大長は 8192bytesです。
  • proxy先が返すレスポンスボディの上限は 10MBです。
  • 上限を超えた場合はエラーとなります。
  • 対象ブラウザは、Internet Explorer11、最新のFirefox、最新のChrome、最新のSafari、最新のiOS Safari、最新のAndroid Chromeとなります。

関連Tips

記事に関するフィードバック

直接的に記事と関連がないご質問はcybozu developer コミュニティをご活用ください。

ログインしてコメントを残してください。
Powered by Zendesk