У меня точно такой же вопрос, как этот: Какой самый эффективный способ вызвать внутреннюю функцию Node.js с помощью JavaScript
За исключением того, что я не могу найти эквивалентное решение для сервера, построенного (не с Express), но Koa и Next JS.
У меня есть бэкэнд-функция, которую мне нужно вызвать из интерфейсного файла Javascript - функция должна запускаться через бэкэнд.
Код: (необходимо запустить функцию извлечения)
const Koa = require('koa');
const next = require('next');
const session = require('koa-session');
const port = parseInt(process.env.PORT, 10) || 8080;
const dev = process.env.NODE_ENV !== 'production';
const app = next({ dev });
const {Storage} = require('@google-cloud/storage');
const storage = new Storage();
function fetch(){
storage
.getBuckets()
.then((results) => {
const buckets = results[0];
console.log('Buckets:');
buckets.forEach((bucket) => {
console.log(bucket.name);
});
})
.catch((err) => {
console.error('ERROR:', err);
});
}
app.prepare().then(() => {
const server = new Koa();
server.use(session(server));
server.use(async (ctx) => {
await handle(ctx.req, ctx.res);
ctx.respond = false;
ctx.res.statusCode = 200;
return
});
server.listen(port, () => {
console.log(`> Ready on http://localhost:${port}`);
});
});