nuxt-plugin-bcms
Version:
Nuxt plugin for BCMS
33 lines (32 loc) • 891 B
JavaScript
import * as fs from 'fs';
import { defineEventHandler } from 'h3';
import axios from 'axios';
export default defineEventHandler(async (event) => {
const { req, res } = event.node;
try {
const response = await axios({
url: `http://localhost:3001/api/bcms-images/${req.url}`,
method: 'GET',
});
const result = response.data;
if (result.exist) {
res.statusCode = 200;
res.setHeader('Content-Type', result.mimetype);
const readStream = fs.createReadStream(result.path);
readStream.pipe(res, {
end: true,
});
return;
}
else {
res.statusCode = 404;
res.end();
return;
}
}
catch (error) {
console.error(error);
res.statusCode = 404;
res.end();
}
});