Botを利用したAPI経由でのファイルダウンロードについて
現在チャット上でユーザAがアップロードしたファイルのFileIDをBotのCallbackから取得し、
Callbackから取得したFileIDをもとに、API経由でファイルをダウンロードしたいと考えています。
チャット上に貼り付けられたファイルをAPI経由でダウンロードする方法はありますでしょうか?
そもそもダウンロードするためのURLを取得するAPIがなさそうに見えています。
以下画像の取得元
(https://developers.worksmobile.com/jp/docs/file-upload#get-download-url-api)
投稿に新しいコメントが追加されましたら通知を送信します。
投稿者がBESTに選択したコメントです。
woff_2d6107
https://forum.worksmobile.com/jp/posts/101306?scrollToCommentNo=102690
ざっくりですが、こんな感じで…まだ実際ダウンロードまではしてないので、しっかりできたらまた削除して書き直すかもしれません。
const headers = {
Authorization : `Bearer ${access_token}`
};
const URL = `https://www.worksapis.com/v1.0/bots/${Bot_Id}/attachments/${File_Id}`;
const options = {
method : "GET",
headers : headers,
redirect : "manual", // リダイレクトを無効にする
};
await fetch(URL, options).then(response => {...
2023.12.17
コメント5
업데이트 된 답글입니다.
ss
コンテンツダウンロード
https://developers.worksmobile.com/jp/docs/bot-attachment-get
2023.12.15
업데이트 된 답글입니다.
河井翔平_6ae873 投稿者
{
"code": "UNAUTHORIZED",
"description": "Authentication failed."
}
権限エラーかと思ったのですが、アクセストークンの取得時のレスポンスでは必要な権限が付与されていることは確認済みです。
▼以下はトークン取得時のレスポンスを抜粋。
"scope": "user bot bot.message",
"token_type": "Bearer",
"expires_in": "86400"
}
2023.12.15
업데이트 된 답글입니다.
woff_2d6107
https://forum.worksmobile.com/jp/posts/101306?scrollToCommentNo=102690
ざっくりですが、こんな感じで…まだ実際ダウンロードまではしてないので、しっかりできたらまた削除して書き直すかもしれません。
const headers = {
Authorization : `Bearer ${access_token}`
};
const URL = `https://www.worksapis.com/v1.0/bots/${Bot_Id}/attachments/${File_Id}`;
const options = {
method : "GET",
headers : headers,
redirect : "manual", // リダイレクトを無効にする
};
await fetch(URL, options).then(response => {...
2023.12.17
업데이트 된 답글입니다.
河井翔平_6ae873 投稿者
共有いただいた内容を実施したところ、ダウンロードURLを取得することができました。
また、ダウンロードURLからAPI経由でのファイルダウンロードも確認することができました。
動作確認はPostmanを利用して行っていたのですが、
HTTPのステータスコード302で返却された際に、自動でダウンロードURLにリダイレクトしてしまっていたようで、
リダイレクトする際には認証情報が載っておらず、ダウンロードURLから取得する際に権限エラーとなっていたということで理解しました。
おかげさまで、問題を解決することができました。
ご協力ありがとうございます。
2023.12.18
업데이트 된 답글입니다.
'name'
2023.12.22
まだ、解決できませんか?
今すぐ実際に使用しているLINE WORKSユーザーに質問してみましょう。