Экспресс-генерация URL

Недавно я играл с nodejs и хотел бы создать с ним свой первый проект. Но для меня есть главный камень преткновения.

Создание URL.

Я очень привык к base_url() и site_url() Codeigniter, это дало полный URL-адрес, например http://www.example.com/resources/img/bla.jpg, поэтому мне было немного странно обнаружить, что для NodeJS/Express нет таких эквивалентных функций.

Я ошибаюсь или где-то есть модуль, который позволил бы генерировать URL-адреса так же, как это делали base_url() и site_url()?

Я использую Express Framework с Jade в качестве механизма шаблонов и MongoDB в качестве базы данных.


person Johann du Toit    schedule 19.01.2012    source источник


Ответы (1)


Возможности Express и рамки PHP-фреймворка, такого как Codeigniter, сильно различаются, и Express делает гораздо меньше предположений о том, как устроен ваш сайт. Например, было бы вполне возможно обслуживать несколько виртуальных хостов с помощью Express (используя промежуточное ПО connect-vhost). В этом случае было бы мало смысла в такой функции, как base_url().

При этом было бы довольно легко свернуть свой собственный, что-то вроде этого:

var BASE_URL = "http://mysite.com"; // Can be loaded in a config file

module.exports.baseUrl = function(path) {
    path = (path || "").replace(/^\//, '');
    return BASE_URL + "/" + path; 
}
person Philippe Plantier    schedule 19.01.2012