GASからREST API経由でデータを取得しようとしています。
認証用のログイントークンを取得後に、そのトークンをヘッダーに入れてデータを取得する形になります。
認証用のトークンは取得でき、id_tokenという変数に格納し、その変数をAPIアクセスの際のヘッダーに入れたのですが、以下のエラーが出ます。。。
not a valid key=value pair (missing equal-sign)
GASとJsの経験が浅くアドバイス頂ければ幸いです。
pythonではうまく取得できております。
GAS function myFunction() { var login_endpoint = "API URL FOR TOKEN"; var params0 = {"adminId": "xxxxxx","password": "xxxxxxxx"}; var request0 = { "method": "post", "payload": JSON.stringify(params0), }; var response0 = UrlFetchApp.fetch(login_endpoint, request0); var data = JSON.parse(response0); var id_token = data.Result.id_token; // Logger.log(id_token); var params1 = {'adminId': 'xxxxx','pgId': 'xxxxxxxxx','extraColumn': []}; var data_endpoint = "API URL FOR USER DATA"; var request1 = { "method": "get", 'contentType': 'application/json', "payload": JSON.stringify(params1), "headers": { "Authorization":'Bearer '+ id_token, }, muteHttpExceptions : true }; var response1 = UrlFetchApp.fetch(data_endpoint, request1); Logger.log(response1); }
Python param0 = {"adminId": "xxxxx","password": "xxxxxxx"} url0 = "API URL FOR TOKEN" response_post = requests.post(url0, json=param0) response_data = response_post.json() id_token = response_data["Result"]["id_token"] headers = {"Content-Type":"application/json", "Authorization":id_token} param1 = {'adminId': 'xxxx','pgId': 'xxxxxxx','extraColumn': []} url1 = "API URL FOR USER DATA" response_get = requests.get(url1, json=param1, headers=headers) response_get.encoding = 'UTF-8' with open('./test.csv','w') as f: f.write(response_get.text)
回答2件
あなたの回答
tips
プレビュー