社内のエンジニアが作ったapiを現在postmanで運用していますが、gsheetから直接apiを叩きたく、GASを使用したいと考えております。
postman以外を使用することは社内では秘密なため、api製作者に詳しいことがきけません。
postmanの設定では、あるURLをpostするだけでbodyはありません。
また、認証はapi keyを使っており、keyの名前がX-Authorizationとなっております。
詳しいことがかけなくて申し訳ないのですが、以下のコードでbad requestのエラーが発生します。
何か直せるところがあればご教示お願いいたします。
GAS
1function sending(yesorno, requestId) { 2 var requestId = "*******************" 3 var yesorno = "不可" 4 var STAGING_KEY = "############################" 5 6 if (yesorno == "可"){ 7 var url = "http://myapi/yes/" + requestId; 8 Logger.log(url) 9 } 10 else if (yesorno == "不可"){ 11 var url = "http://myapi/no/" + requestId; 12 Logger.log(url) 13 } 14 15 var options = { 16 'muteHttpExceptions': true, 17 'method': 'post', 18 'headers': { 19 'X-Authorization': STAGING_KEY 20 } 21 }; 22 23 //Error processing 24 try { 25 var response = JSON.parse(UrlFetchApp.fetch(url, options)); 26 if (response && response["id"]) { 27 return 'sent'; 28 } else { 29 //reportError("Invalid response: " + JSON.stringify(response)); 30 //return 'error'; 31 Logger.log('error') 32 } 33 } catch (e) { 34 //reportError(e.toString()); 35 //return 'error'; 36 Logger.log('error') 37 } 38} 39
あなたの回答
tips
プレビュー