2015-08-13 2 views
1

Я возвращающее значение в формате JSON, например, в одном из моих конечных точек:Подавать статические изображения Koa.js

{ 
    "image":"http//devservername/assets/someimage.jpg" 
} 

Я пытаюсь выяснить, как статический служить это через Koa.js и не уверен, что это будет на маршруте или что ...

+0

Вы посмотрели на 'koa-static'? –

+0

Да, я еще не был уверен, хочу ли я использовать это – PositiveGuy

+0

Ну, это то, что он делает для жизни, и вот как все классные мальчики и девочки обслуживают статические активы, и это включает в себя добавление двух строк к вашему коду. –

ответ

0

удалить http://devservername, и он будет связан, конечно, вы должны использовать промежуточное программное обеспечение для обслуживания папок.

использование koa-static-folder

import serve from 'koa-static-folder'; 

serve(__dirname + '/public/'); 
+1

Чтобы это было ответом, вам нужно предложить, какое промежуточное программное обеспечение, и показать немного о том, как его использовать. Кроме того, наличие или отсутствие имени хоста не должно иметь никакого значения. –

+0

crap now Я получаю ошибку 2015-08-17T16: 37: 13.584321427Z Ошибка: ENOENT, нет такого файла или каталога «./assets» после того, как мы подтолкнули его на наш сервер Ubuntu – PositiveGuy

4

Использование koa-static.

npm install --save koa-static 

// index.js or whatever 
var KoaStatic = require('koa-static'); 
app.use(KoaStatic('assets')); 

Это будет служить запрос foo.txt от assets/foo.txt. Если вы хотите подать assets/foo.txt в ответ на запрос для assets/foo.txt, тогда позвоните KoaStatic('.'). Это, вероятно, не очень хорошая идея, поскольку она будет служить чему-либо из корня. Лучше создать каталог public, поместите в него каталог assets и используйте KoaStatic('public').

+0

и он не работает. Я сделал то же самое, что и в моем app.js, затем пошел в браузер и набрал http: // localhost: 8000/assets/background.jpg, и я не получил – PositiveGuy

+0

. Вы должны действительно прочитать документацию и правильно настроить ее. Что будет сделано выше, так это служить '/ assets/foo.txt' в ответ на GET на' foo.txt'. Если вы хотите использовать '/ assets/foo.txt' в ответ на GET на' 'assets/foo.txt', тогда вам нужно смонтировать запрос использования на' assets', или сделать что-то вроде создания 'public/а затем выполните 'app.use (KoaStatic ('public'))'. –