Экспресс URL поколения - PullRequest
1 голос
/ 19 января 2012

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

Генерация URL.

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

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

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

1 Ответ

2 голосов
/ 19 января 2012

Область применения 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; 
}
...