google driveに保存した写真をLINEに投稿したいのですが、写真データのURLがおかしいのか画像なしで投稿されてしまいます。
試したのは下記①②のUTLです。
WEB公開されている一般のURLでは無事に投稿できているため、対象PGM自体はきちんと動いているようです。
あくまでgoogle driveに保存されたファイルのID(fileId)をgetId()で取得し、下記の①②でimageUrlを作成しているところで画像取得が失敗しているようです。
①var imageUrl = 'https://drive.google.com/uc?id=' + fileId;
②var imageUrl = 'https://drive.google.com/uc?export=view&id=' + fileId;
※②では、本来httpですがhttpのままだとエラーとなるため、httpsに変更しています。
どなたか解決方法をご存知でしたらお知らせください。
よろしくお願いいたします。
(google driveに保存した写真をLINEに投稿することが目的です。他の方法でも構いません。)
【対象PGM】
1function sendImage(replyTo,imageUrl){ 2 UrlFetchApp.fetch(pushUrl, { 3 'headers': { 4 'Content-Type': 'application/json; charset=UTF-8', 5 'Authorization': 'Bearer ' + ACCESS_TOKEN, 6 }, 7 'method': 'post', 8 'payload': JSON.stringify({ 9 'to': replyTo, 10 'messages': [{ 11 'type': 'image', 12 'originalContentUrl': imageUrl, 13 'previewImageUrl': imageUrl, 14 }], 15 }), 16 }); 17 return ContentService.createTextOutput(JSON.stringify({'content': 'post ok'})).setMimeType(ContentService.MimeType.JSON);
回答2件
あなたの回答
tips
プレビュー