Мой веб-сервер находится на http://localhost:3000
, но мой сервер API находится на http://localhost:3001
. Так что вместо того, чтобы предварить все мои запросы, как так:
var root = 'http://localhost:3001';
$http.get(root+'/')...
... как я могу установить http://localhost:3001
по умолчанию для всех исходящих $http
запросов? Я пробовал смотреть на Default Transformations, но не мог этого понять.
Редактировать: прочитав документы чуть внимательнее, я менее уверен (но все еще не уверен), что у Углового есть способ справиться с этим. Кажется, что вы можете манипулировать заголовками и данными, но не URL.
Редактировать 2: Два ответчика рекомендуют использовать глобальные функции/переменные. Это работает, но приводит к ошибкам CORS.
@AdamZerner на стороне заметки, какие преимущества вы надеетесь получить, используя 2 сервера здесь? Я не думал, что 2 сервера будут намного дополнительной работой CORS, чем один сервер, но я никогда не пробовал себя. – javawocky
Кто-то рекомендовал его мне как способ быть более эффективным. Мое понимание: пусть X = web и Y = API. Скажем, я обслуживаю X и Y с одного и того же сервера, но получаю много хитов API, поэтому мне нужно масштабировать Y. Учитывая настройку, каждый раз, когда я добавляю сервер, я добавляю X * и * Y, когда я нужен только Y.Разделение X и Y на разные серверы дает вам гибкость при масштабировании. Но вопрос, который мы задаем себе, - это «гибкость, достойная сложности», и мы оба, похоже, считаем, что ответ «нет». –
@AdamZerner интересно, я никогда раньше не сталкивался с этим. Возможно, преимущества становятся очевидными только после того, как вы увеличиваете ужасную массу до такой степени, когда фактическая производительность аппаратного обеспечения сервера начинает влиять на разделение работы, что уменьшит нагрузку на сервер? – javawocky