linebot webhoo エラー 解決方法教えて下さい。
解決したいこと
apps scriptを使って英語翻訳するlinebotを作っています。
linedevelopersとapps scriptをつなげる際に使用するwebhookでエラーが発生しました。
解決方法を教えて下さい。
発生している問題・エラー
ボットサーバーから200以外のHTTPステータスコードが返されました。(401 Unauthorized)
LINEプラットフォームから送信されたHTTP POSTリクエストに対してボットサーバーがステータスコード200を返すことを確認してください。
該当するソースコード
const REPLY = "https://api.line.me/v2/bot/message/reply";
const ACCESS_TOKEN = "*******";
const SHEET_ID = '';
const SHEET_URL = '';
const SHEET_LOG = SpreadsheetApp.openById(SHEET_ID).getSheetByName('検索履歴');
function doPost(e) {
//const data = JSON.parse(e.postData.contents).events[0];
//const lineUserId = data.source.userId;
//const replyToken = data.replyToken;
//const postMsg = data.message.text;
const postMsg = 'hello'
const lineUserId = 'test'
const lang = 'en'
const japaneseMsg = LanguageApp.translate(postMsg, lang,'ja');
const cainaMsg = LanguageApp.translate(postMsg, lang,'zh');
const spainMsg = LanguageApp.translate(postMsg, lang,'es');
// 検索履歴にユーザーID、原文(英語)、翻訳(日本語、中国語、スペイン語)、日時を記載
debugLog(lineUserId, postMsg, japaneseMsg, cainaMsg, spainMsg);
//sendMessage(replyToken, JA: ${japaneseMsg}\nZH: ${cainaMsg}\nES: ${spainMsg}
);
}
//デバック記録
function debugLog(userId, text, jap,cai,spa ) {
const date = Utilities.formatDate( new Date(), 'Asia/Tokyo', 'yyyy-MM-dd HHss');
SHEET_LOG.appendRow([userId, text, jap, cai, spa, date]);
}
// LINEに送信
function sendMessage(replyToken, replyText) {
const postData = {
"replyToken" : replyToken,
"messages" : [
{
"type" : "text",
"text" : replyText
}
]
};
const headers = {
"Content-Type" : "application/json; charset=UTF-8",
"Authorization" : "Bearer " + ACCESS_TOKEN
};
const options = {
"method" : "POST",
"headers" : headers,
"payload" : JSON.stringify(postData)
};
return UrlFetchApp.fetch(REPLY, options);
}
自分で試したこと
ここに問題・エラーに対して試したことを記載してください。
SHEET_ID,URLの部分は参考資料通り行ったらスプレッドシートに結果がかえってきたの問題はなさそうです。
ACCESS_TOKENはlinedevelopersで発行した物を張り付けています。
linedevelopersのwebhookにはapps scriptでデプロイして発行されたウェブアプリurlを張りつけています。appsscript