質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Google Apps Script

Google Apps ScriptはGoogleの製品と第三者のサービスでタスクを自動化するためのJavaScriptのクラウドのスクリプト言語です。

Q&A

解決済

1回答

873閲覧

GASからLINEへの通知:401エラー

aki9969

総合スコア6

Google Apps Script

Google Apps ScriptはGoogleの製品と第三者のサービスでタスクを自動化するためのJavaScriptのクラウドのスクリプト言語です。

0グッド

0クリップ

投稿2023/01/04 14:15

編集2023/01/04 14:28

前提

GASでLINEへの通知システムを作っています。
実装中に以下のエラーメッセージが発生しました。

実現したいこと

  • 機能を動作するようにする

発生している問題・エラーメッセージ

Exception: Request failed for https://api.line.me returned code 401. Truncated server response: {"message":"Authorization header required. Must follow the scheme, 'Authorization: Bearer <ACCESS TOKEN>'"} (use muteHttpExceptions option to examine full response) notifyLINE @ ライン.gs:30

該当のソースコード

function notifyLINE(){ const ACCESS_TOKEN = 'r34davOv58ywzACNgEOlal9KBeR3q0Q49f7dlK/jRk--省略--t89/1O/w1cDnyilFU='; const USER_ID = 'U03b81--省略--'; var url = 'https://api.line.me/v2/bot/message/push'; var headers = { 'Content-Type':'application/json; charset=UTF-8', 'Authorization':'Bearer ' +ACCESS_TOKEN }; var message = 'テスト通知です' var data = { 'to':USER_ID, 'mesages' :[ { 'type':'text', 'text':message } ] }; var options = { 'method':'post', 'headers ':headers, 'payload':JSON.stringify(data) } UrlFetchApp.fetch(url, options); }

試したこと

「; charset=UTF-8」を削除した。

よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

'mesages' :[

'messages' :[

に修正

そして、

'headers ':headers,

'headers':headers,

に修正(前半のheadersの後ろにある半角スペースを削除)した場合いかがでしょうか。

投稿2023/01/04 14:32

編集2023/01/04 21:24
退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

aki9969

2023/01/04 15:06 編集

ご回答ありがとうございます。 'messages' :[ に修正し、エディタ上で保存し、実行したところ以下のようなエラー文が出ました。 Exception: Request failed for https://api.line.me returned code 401. Truncated server response: {"message":"Authorization header required. Must follow the scheme, 'Authorization: Bearer <ACCESS TOKEN>'"} (use muteHttpExceptions option to examine full response) notifyLINE @ ライン.gs:30 勉強不足で恐縮ですが、ご教授ください。 >デプロイし、そのデプロイによって得られたURL は、https://script.google.com/home/projects/~~省略~~/edit というような、URLであっておりますでしょうか?
aki9969

2023/01/04 15:08

``` function notifyLINE(){ const ACCESS_TOKEN = 'r34davOv58ywzACNgEOlal9KBeR3q0Q49f7dlK/jRkAjjQgo3PbzvEGgYmrRAN8DDhDp4l4N6qJRJOSVq0EURvkIauoIQOE6pdQNFHL3V0YWyTdskLjhoD0JdJM8npv1Nu9vBgKaabsWfMdFE5AlsAdB04t89/1O/w1cDnyilFU='; const USER_ID = 'U03b81ce60d84e2aa6b0856af7fed84db'; var url = 'https://api.line.me/v2/bot/message/push'; var headers = { 'Content-Type':'application/json; charset=UTF-8', 'Authorization':'Bearer ' +ACCESS_TOKEN }; var message = 'テスト通知です'; var data = { 'to':USER_ID, 'messages' :[ { 'type':'text', 'text':message } ] }; var options = { 'method':'post', 'headers ':headers, 'payload':JSON.stringify(data) }; UrlFetchApp.fetch(url, options); } ```
退会済みユーザー

退会済みユーザー

2023/01/04 22:22 編集

> >デプロイし、そのデプロイによって得られたURLは、https://script.google.com/home/projects/~~省略~~/editというような、URLであっておりますでしょうか? 違います。 正しいデプロイ方法については https://qiita.com/cog1t0/items/0d121ee6d48a8c1634fc の真ん中以降に書いてある「GoogleAppScriptのコードにトークンを書き込んで、デプロイをします」以降の内容に従ってください。 ページアンカーのリンク: https://qiita.com/cog1t0/items/0d121ee6d48a8c1634fc#googleappscript%E3%81%AE%E3%82%B3%E3%83%BC%E3%83%89%E3%81%AB%E3%83%88%E3%83%BC%E3%82%AF%E3%83%B3%E3%82%92%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%82%93%E3%81%A7%E3%83%87%E3%83%97%E3%83%AD%E3%82%A4%E3%82%92%E3%81%97%E3%81%BE%E3%81%99 わからなければ、デプロイ方法についてはこの質問の対象外であることと、かつ私は上記ページ以上に分かりやすい説明はできないので、デプロイ方法についての質問を別途立ててください。親切な誰かが教えてくれるでしょう。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問