SDKプラットフォーム:Node.jsボットエミュレータからファイル(.pdf、.jpg..jpeg)をアップロードし、ファイルをローカルドライブに保存せずにバイナリ(base64)に変換する方法は?
ボットエミュレータからファイル(.pdf、.jpg..jpeg)をアップロードし、ローカルドライブにファイルを保存せずにバイナリ(base64)に変換する方法を教えてください。
コード例:
var url = session.message.attachments[0].contentUrl;
var fileName=session.message.attachments[0].name;
var encodedData = new Buffer(fs.createWriteStream(url+"/"+fileName), 'binary').toString('base64');
上記のようなもの、それは私のために働いていません。
予想される動作:
我々はBOTエミュレータからファイルをアップロードし、バイナリデータにファイルの内容を変換する必要があります。
実際の結果:ここで
ERROR: ENOENT: no such file or directory, open 'D:\User\projects\messages\http:\localhost:61058\v3\attachments\ne1gmlim5kfg\views\original\filename.pdf'
が必要とされていない現在のディレクトリを追加します。参考のため
:https://github.com/Microsoft/BotBuilder/issues/3628
おかげエリックのためにあなたの貴重な返事。上記のコードでは、checkRequiresToken、requestWithTokenはどこからリクエストされているのですか?これらのエラーは次のようになります。ReferenceError:checkRequiresTokenは定義されていません。これに関する情報を提供してください。 –
@MuraliEdiga checkRequiresTokenと他のメソッドを答えに追加しました。(提供されているgithubのリンクにもあります) –
ありがとう@Eric Dahlvangファイルからバイナリ(base64)を変換できます。 –