以下の例は、米国航空宇宙局(NASA)のAPIと通信するものです。スクリプトを正しく実行させるには、https://api.nasa.gov/index.html#apply-for-an-api-keyからキーをリクエストして、それをkey変数に割り当てる必要があります。
key = "<key>"; // 取得したキーに置き換える
limit = 100;
url = "https://api.nasa.gov/patents/content";
request = New HTTP Request(
URL( url ), // restAPIのエンドポイント
Method( "HTTP method" ),
Query String( // キーと値のペアを指定
[["api_key" => key, "concept_tags" => "false",
"limit" => limit]] // JSL の連想配列
)
);
data = request << Send(); // リクエストをAPIに送信
Write( data );
•
|
クエリ文字列は、URLの末尾の「?」の後に続きます。たとえば、https://www.google.com/search?q=jmpの場合は、“q=jmp”がクエリ文字列になります。New HTTP Request()はクエリ文字列(およびFORM)内のキーと値のペアを自動的にURIエンコードします。
|
key= "<key>"; //取得したキーに置き換える
limit = 100;
url = "https://api.nasa.gov/patents/content";
request = New HTTP Request(
URL( url ),
Method( "Get" ),
Query String(
[["api_key" => key, "concept_tags" => "false",
"limit" => limit]]
)
);
json = request << Send();
jsl_json = Parse JSON( json );
// JSONデータをJSL連想配列にする
results = jsl_json["results"];
Write( results );
key= "<key>"; //取得したキーに置き換える
limit = 100;
url = "https://api.nasa.gov/patents/content";
request = New HTTP Request(
URL( url ),
Method( "Get" ),
Query String(
[["api_key" => key, "concept_tags" => "false",
"limit" => limit]]
)
);
json = request << Send();
jsl_json = Parse JSON( json );
dt = JSON To Data Table( As JSON Expr( jsl_json["results"] ) );
// 「JSON To Data Table」はJSONデータをデータテーブルに変換する
// 「JSON Expr」はJSLの連想配列をJSON文字列に変換する
dt << Set Name( "NASA Patents" );
図14.5 データテーブルに読み込まれたデータ