Include a header in requests to AudiobookCovers

This commit is contained in:
Spenser Bushey 2024-02-04 16:00:25 -08:00
parent 66585c32d3
commit 5ced43ccde

View file

@ -1,23 +1,31 @@
const axios = require('axios')
const Logger = require('../Logger')
const axios = require("axios");
const Logger = require("../Logger");
class AudiobookCovers {
constructor() {}
async search(search) {
const url = `https://api.audiobookcovers.com/cover/ai-search`
const params = new URLSearchParams([['q', search]])
const items = await axios.get(url, { params }).then((res) => {
if (!res || !res.data) return []
return res.data
}).catch(error => {
Logger.error('[AudiobookCovers] Cover search error', error)
return []
const url = "https://api.audiobookcovers.com/cover/ai-search";
const request_options = {
params: {
q: search,
},
headers: {
"User-Agent": `Audiobookshelf/${global.ServerSettings.version}`,
},
};
const items = await axios
.get(url, request_options)
.then((res) => {
if (!res || !res.data) return [];
return res.data;
})
return items.map(item => ({ cover: item.versions.png.original }))
.catch((error) => {
Logger.error("[AudiobookCovers] Cover search error", error);
return [];
});
return items.map((item) => ({ cover: item.versions.png.original }));
}
}
module.exports = AudiobookCovers
module.exports = AudiobookCovers;