mirror of
https://github.com/advplyr/audiobookshelf.git
synced 2025-02-01 00:18:14 +01:00
Update:Get item cover API endpoint to allow for returning the raw cover image
This commit is contained in:
parent
3ea3e55d17
commit
67db41a525
@ -1,3 +1,4 @@
|
|||||||
|
const fs = require('../libs/fsExtra')
|
||||||
const Logger = require('../Logger')
|
const Logger = require('../Logger')
|
||||||
const SocketAuthority = require('../SocketAuthority')
|
const SocketAuthority = require('../SocketAuthority')
|
||||||
|
|
||||||
@ -178,7 +179,15 @@ class LibraryItemController {
|
|||||||
|
|
||||||
// GET api/items/:id/cover
|
// GET api/items/:id/cover
|
||||||
async getCover(req, res) {
|
async getCover(req, res) {
|
||||||
let { query: { width, height, format }, libraryItem } = req
|
const { query: { width, height, format, raw }, libraryItem } = req
|
||||||
|
|
||||||
|
if (raw) { // any value
|
||||||
|
if (!libraryItem.media.coverPath || !await fs.pathExists(libraryItem.media.coverPath)) {
|
||||||
|
return res.sendStatus(404)
|
||||||
|
}
|
||||||
|
|
||||||
|
return res.sendFile(libraryItem.media.coverPath)
|
||||||
|
}
|
||||||
|
|
||||||
const options = {
|
const options = {
|
||||||
format: format || (reqSupportsWebp(req) ? 'webp' : 'jpeg'),
|
format: format || (reqSupportsWebp(req) ? 'webp' : 'jpeg'),
|
||||||
|
@ -47,7 +47,7 @@ class CacheManager {
|
|||||||
|
|
||||||
res.type(`image/${format}`)
|
res.type(`image/${format}`)
|
||||||
|
|
||||||
var path = Path.join(this.CoverCachePath, `${libraryItem.id}_${width}${height ? `x${height}` : ''}`) + '.' + format
|
const path = Path.join(this.CoverCachePath, `${libraryItem.id}_${width}${height ? `x${height}` : ''}`) + '.' + format
|
||||||
|
|
||||||
// Cache exists
|
// Cache exists
|
||||||
if (await fs.pathExists(path)) {
|
if (await fs.pathExists(path)) {
|
||||||
@ -66,7 +66,7 @@ class CacheManager {
|
|||||||
return res.sendStatus(500)
|
return res.sendStatus(500)
|
||||||
}
|
}
|
||||||
|
|
||||||
let writtenFile = await resizeImage(libraryItem.media.coverPath, path, width, height)
|
const writtenFile = await resizeImage(libraryItem.media.coverPath, path, width, height)
|
||||||
if (!writtenFile) return res.sendStatus(500)
|
if (!writtenFile) return res.sendStatus(500)
|
||||||
|
|
||||||
// Set owner and permissions of cache image
|
// Set owner and permissions of cache image
|
||||||
|
Loading…
Reference in New Issue
Block a user