Javascript 正在读取文件附件(例如.txt文件)-Discord.JS

Javascript 正在读取文件附件(例如.txt文件)-Discord.JS,javascript,node.js,discord,discord.js,fs,Javascript,Node.js,Discord,Discord.js,Fs,第二次在StackOverflow上发帖,所以我为任何错误道歉。 请容忍我 与标题相同;如何读取不一致附件的内容(比如.txt文件)并打印内容 我尝试了fs,但不幸失败,我也搜索了文档,但也失败了 想法?您不能使用fs模块进行此操作,因为它只处理本地文件。将文件上载到Discord服务器时,它会上载到CDN,您所能做的就是使用URL属性从中获取此文件的URL 如果您需要从web获取文件,可以使用内置的https模块从URL获取,也可以从npm安装一个文件,就像我下面使用的一样 要安装node

第二次在StackOverflow上发帖,所以我为任何错误道歉。 请容忍我

与标题相同;如何读取不一致附件的内容(比如
.txt
文件)并打印内容

我尝试了
fs
,但不幸失败,我也搜索了文档,但也失败了


想法?

您不能使用
fs
模块进行此操作,因为它只处理本地文件。将文件上载到Discord服务器时,它会上载到CDN,您所能做的就是使用
URL
属性从中获取此文件的URL

如果您需要从web获取文件,可以使用内置的
https
模块从URL获取,也可以从npm安装一个文件,就像我下面使用的一样

要安装
node fetch
,请在根文件夹中运行
npm i node fetch

查看下面的工作代码,它可以很好地处理文本文件:

const{Client}=require('discord.js');
const fetch=require('node-fetch');
const client=new client();
client.on('message',异步(message)=>{
if(message.author.bot)返回;
//获取文件的URL
const file=message.attachments.first()?.url;
如果(!file)返回console.log('未找到附加文件');
试一试{
message.channel.send('Reading the file!Fetching data…');
//从外部URL获取文件
const response=等待获取(文件);
//如果出现错误,请发送状态为的消息
如果(!response.ok)
返回message.channel.send(
'提取文件时出错:',
response.statusText,
);
//获取响应流并将其读取到完成
const text=等待响应。text();
如果(文本){
message.channel.send(`${text}``);
}
}捕获(错误){
console.log(错误);
}
});

我想知道这在实践中可以应用到哪里?老实说,我不知道。也许@systemGene可以告诉我们:)这是个秘密!:)