質問編集履歴
2
修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -118,7 +118,7 @@
|
|
118
118
|
|
119
119
|
|
120
120
|
|
121
|
-
##
|
121
|
+
## 追加検証(追記)
|
122
122
|
|
123
123
|
console.log()等で原因探しを進めてみましたが、StackdriverLoggingの方には、リクエスト失敗のエラーしか出力されません。
|
124
124
|
|
1
デバッグを進めました
test
CHANGED
File without changes
|
test
CHANGED
@@ -115,3 +115,105 @@
|
|
115
115
|
|
116
116
|
|
117
117
|
POSTがされないのか、doPost()が呼ばれていないのか、返答が遅れていないのか、よくわかりません。Loggerも使ってみましたが何も表示されずよくわからず仕舞いです...
|
118
|
+
|
119
|
+
|
120
|
+
|
121
|
+
## デバッグ
|
122
|
+
|
123
|
+
console.log()等で原因探しを進めてみましたが、StackdriverLoggingの方には、リクエスト失敗のエラーしか出力されません。
|
124
|
+
|
125
|
+
```
|
126
|
+
|
127
|
+
function doPost(e) {
|
128
|
+
|
129
|
+
console.info("ここまできた"); //出力されてない
|
130
|
+
|
131
|
+
var json = JSON.parse(e.postData.contents);
|
132
|
+
|
133
|
+
|
134
|
+
|
135
|
+
//返信するためのトークン取得
|
136
|
+
|
137
|
+
var reply_token= json.events[0].replyToken;
|
138
|
+
|
139
|
+
if (typeof reply_token === 'undefined') {
|
140
|
+
|
141
|
+
return;
|
142
|
+
|
143
|
+
}
|
144
|
+
|
145
|
+
|
146
|
+
|
147
|
+
//送られたメッセージ内容を取得
|
148
|
+
|
149
|
+
var message = json.events[0].message.text;
|
150
|
+
|
151
|
+
|
152
|
+
|
153
|
+
// メッセージを返信
|
154
|
+
|
155
|
+
var response = UrlFetchApp.fetch(line_endpoint, {
|
156
|
+
|
157
|
+
'headers': {
|
158
|
+
|
159
|
+
'Content-Type': 'application/json; charset=UTF-8',
|
160
|
+
|
161
|
+
'Authorization': 'Bearer ' + access_token,
|
162
|
+
|
163
|
+
},
|
164
|
+
|
165
|
+
'method': 'post',
|
166
|
+
|
167
|
+
'payload': JSON.stringify({
|
168
|
+
|
169
|
+
'replyToken': reply_token,
|
170
|
+
|
171
|
+
'messages': [{
|
172
|
+
|
173
|
+
'type': 'text',
|
174
|
+
|
175
|
+
'text': message,
|
176
|
+
|
177
|
+
}],
|
178
|
+
|
179
|
+
}),
|
180
|
+
|
181
|
+
});
|
182
|
+
|
183
|
+
|
184
|
+
|
185
|
+
// サンプル
|
186
|
+
|
187
|
+
try {
|
188
|
+
|
189
|
+
var rcode = response.getResponseCode();
|
190
|
+
|
191
|
+
var rbody = response.getContentText();
|
192
|
+
|
193
|
+
if (rcode !== 200) {
|
194
|
+
|
195
|
+
console.log("%d: %s", rcode, rbody); //出力されてない
|
196
|
+
|
197
|
+
}
|
198
|
+
|
199
|
+
} catch(e) {
|
200
|
+
|
201
|
+
console.log(e); //出力されていない
|
202
|
+
|
203
|
+
}
|
204
|
+
|
205
|
+
return ContentService.createTextOutput(JSON.stringify({'content': 'post ok'})).setMimeType(ContentService.MimeType.JSON);
|
206
|
+
|
207
|
+
}
|
208
|
+
|
209
|
+
```
|
210
|
+
|
211
|
+
##### 結果
|
212
|
+
|
213
|
+
```
|
214
|
+
|
215
|
+
https://api.line.me/v2/bot/message/reply のリクエストに失敗しました(エラー: 401)。サーバー応答の一部: {"message":"Authentication failed due to the following reason: accessToken expired(2). Confirm that the access token in the authorization header is...(応答の全文を見るには muteHttpExceptions オプションを使用してください) at doPost(コード:19)
|
216
|
+
|
217
|
+
```
|
218
|
+
|
219
|
+
アクセストークンは再発行して最新のものに書き換えたので、問題ないと思いますが、何か手がかりがあれば教えていただけると嬉しいです。
|