2015-05-20 1 views
0

Где я могу определить URL-адрес по умолчанию для моего углового ресурса, поэтому мне не нужно предоставлять абсолютный URL-адрес для каждой конечной точки api, которая у меня есть?Как и где определить домен по умолчанию для моего углового ресурса?

(АНИ, что я использую на одной и той же области, но с аа подобласти: http://api.myapp.app/api/v1)

Я совершенно новой для угловой и я очень стараюсь, чтобы получить полное понимание, так что я бы никогда так благодарен, если кто-то может объяснить мне «почему» за ответом.

+0

Будет ли URL-адрес api оставаться неизменным или он никогда не изменится? –

+0

Это может измениться, но не так часто, что мне понадобится система сборки, как показано ниже. Для меня просто важно, чтобы я только должен был установить его в одном месте в «конфигурации приложения», так сказать. – badger

ответ

0

Если вы используете систему сборки, как хрюканье и сервера развертывания изменятся, я хотел бы посмотреть на grunt-ng-constant

В противном случае вы можете просто определить константу в вашем приложении конфигурации, как:

angular 
    .module('app', []) 
    .constant("ENV", { 
     "ApiEndpoint": "somedomain.com" 
    }); 

Тогда вы можете передать, что вокруг, как:

angular.module('app').controller('SomeCtrl', function(ENV) { 
    // ENV.ApiEndpoint 
}); 

не верно по умолчанию сам по себе, но, по крайней мере, не будет вручную необходимо ввести свой базовый домен в каждом ресурсе, вам нужно всего лишь ссылаться ENV.ApiEndpoint

+0

Спасибо, Мэтью. Но это все равно подразумевает, что для каждого ресурса на моей фабрике api я должен добавить эту константу? Другими словами; не существует способа позволить ngResource всегда использовать заданный домен? – badger

+0

Не знаю, что я знаю, нет :( –

0

вы можете быть в состоянии использовать это в голове вашего главного HTML файла: <base href="/base-url">

как отмечено в angularjs документы here ..scroll вниз Relative Links

+0

Спасибо, я видел это, но я решил, что это может помешать другим вещам – badger