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);
}
}