Я создал API с использованием expressjs, однако он не будет воспроизводить изображения в формате gif через Discord.Я проверил, и изображения gif воспроизводятся через браузер, но не Discord.
const fs = require('fs');
module.exports = function(API) {
API.get('/poke', async function(req, res) {
const images = fs.readdirSync('./assets/poke');
let chosenImage = images[Math.floor(Math.random() * images.length)];
await res.json({ result: `http://localhost/get?endpoint=poke&file=${chosenImage}` })
});
};
Приведенный выше код - это конечная точка, к которой я пытаюсь получить доступ, и приведенный ниже код показывает, как он захватывает изображения.
const path = require('path');
module.exports = function(API) {
API.get('/get', async function(req, res) {
const options = {
root: path.join('assets')
};
const endpoint = req.query.endpoint;
const file = req.query.file;
res.sendFile(`${endpoint}/${file}`, options)
});
};
Код бота Discord для захвата изображения
const request = require('request');
request({url: 'http://localhost/poke', json: true},
function (error, response, body) {
const pokeEmbed = new Discord.RichEmbed()
.setColor(0x8CDFFC)
.setImage(body.url)
return message.channel.send(pokeEmbed);
Показывает изображение, однако не будет его воспроизводить.