コンテンツダウンロードについて(GAS使用)

KERI

2023.03.02既読 1325

いつも皆さんの記事を参考にさせていただいております。
画像データ取得(Bot/コンテンツダウンロード)をGASで試みています。
※以下botIdとfileId、accessTokenは正常に取得できています。
var url = "https://www.worksapis.com/v1.0/bots/" + botId +"/attachments/" + fileId
とし
var headers ={
'Authorization': 'Bearer ' + accessToken,
var options = {
'method':'get',
'header': headers,
'followRedirects': 'false'
}
var res = UrlFetchApp.fetch(url,options);
で、読み込もうとしていますがうまくいきません。
同様の操作をPostmanで行ったところ画像取得ができ、先日の記事を参考にさせていただき、パラメーターに「followRedirect:false」を加えるとリンクが表示されました。
GAS側のurlの記述方法や、header、optionの項目を様々書き換えてみましたが、うまくいきません。
問題と思われる記述内容や、原因回避の方法についてご教授いただけましたら幸いです。
よろしくお願いいたします。

コメント6

  • 업데이트 된 답글입니다.

    ocome※

    KERIさん
    はじめまして。

    弊社では画像データを👇のようなGASで取得しております。
     const uri = `https://www.worksapis.com/v1.0/bots/${ops.botId}/attachments/${fileId}`
     const res = await UrlFetchApp.fetch(uri, {
       'method': 'get',
       'headers': {
         'Authorization': `Bearer ${token}`,
       },
       muteHttpExceptions: true
     });

    ご参考になれば幸いです!

    2023.03.08

    0
  • 업데이트 된 답글입니다.

    KERI 投稿者

    よね様、コメントありがとうございました。大変感謝いたしております。

    手元の該当箇所を変更してみましたが、「Remove unnecessary 'await'」の表示が出てしまいます。

    前提条件として、他に記述しておくものはございませんでしょうか?
    当方GASの知識に乏しく、あつかましいながら、ぜひ教えていただきたく存じます。
    よろしくお願いいたします。

    2023.03.08

    0
  • 업데이트 된 답글입니다.

    ocome※

    KERIさん
    失礼しました。await は不要でしたので除いていただければ大丈夫かと思われます。

    const uri = `https://www.worksapis.com/v1.0/bots/${ops.botId}/attachments/${fileId}`
    const res = UrlFetchApp.fetch(uri, {
      'method': 'get',
      'headers': {
        'Authorization': `Bearer ${token}`,
      },
      muteHttpExceptions: true
    });

    元のコードと相違している部分は 変数「option」の header が headers に変わっているだけかと思いますので、そこも合わせて変更してご覧になられてみてください。

    2023.03.09

    1
  • 업데이트 된 답글입니다.

    KERI 投稿者

    よね様、お忙しい中ありがとうございます。

    ご指摘いただいた「headers」の変更をしましたが、やはり現状は成功には至りません。
    コードの大きな相違ではないようですので、スペルミスがないか細かく修正してみます。

    うまくいきましたら、原因と施した対処についてご報告させていただきたいと思います。

    2023.03.09

    1
  • 업데이트 된 답글입니다.

    KERI 投稿者

    随分時間がかかってしまいましたが、try ~ catchを設定し、エラーログがBotの返信となるよう設定して順に確認していくと、コンテンツダウンロード自体は上手く行っていることがわかりました。コードはocome※様のものを使わせていただき、無事に解決いたしました。ありがとうございました!

    2024.05.07

    0
  • 업데이트 된 답글입니다.

    ocome※

    KERIさん
    無事、処理が行えたようで何よりでした。
    またお力添えできる機会やご助力いただきたい際はよろしくおねがいいたします。

    2024.05.07

    1
前の投稿 トークBotにおけるコンテンツの一覧取得および削除に関する質問
次の投稿スマホアプリから登録したイベントに限り、基本カレンダーの予定の取得でremindersが取得できません
リスト

まだ、解決できませんか?
今すぐ実際に使用しているLINE WORKSユーザーに質問してみましょう。