GAS APIをたたいてJSONを取得してスプレッドシートに反映させる

GASを学んでみる
自己証明書を使ったベーシック認証のかかったAPIにアクセスして
スプレッドシートに取得した値を表示してみる。

// スプレッドシートが開かれたタイミングで実行される
function onOpen(event){
var menuitems = [
{name:’データ取得’, functionName:’getData’}
];
var sheet = SpreadsheetApp.getActiveSpreadsheet(); // アクティブなシート
sheet.addMenu(‘★’, menuitems); // スプレッドシートにメニューを追加
}

function getData(){
var apiUrl = ‘https://xxxx.com’;

// リクエストの中身
var extUrl = ‘Api/getLog’,
auth_data = Utilities.base64Encode(‘user:pass’), // ベーシック認証のURL
headers = {‘Authorization’ : ‘Basic ‘ + auth_data},
params = {
‘headers’ : headers,
‘validateHttpsCertificates’ : false // 自己証明書の場合、証明書のチェックしない
};

// fetch
var response = UrlFetchApp.fetch(apiUrl + extUrl , params),
result = JSON.parse(response.getContentText());

var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();

for (var i = 0; i < result.length; i++) {
var val = result[i];
sheet.getRange(10+i,1).setValue(val);
}
}

コメント

タイトルとURLをコピーしました