2017-02-21 51 views
1

У меня проблема с клиентом Aurelia Http. Мой api (http // localhost: 3000/api/posts) отлично работает. Выход из ПОЛУЧИТЬ вызова (в почтальона или в браузере) является:aurelia-http-client подключается к неправильному адресу

[ 
    { 
    "_id": "58a5f4f635c3ab643c74d97a", 
    "text": "Foo", 
    "name": "Fooo", 
    "__v": 0 
    }, 
    { 
    "_id": "58a5fcc32586d0683455f78d", 
    "text": "Bar", 
    "name": "Baar", 
    "__v": 0 
    } 
] 

Это мой прибудете вызов в приложении Аурелия:

getPosts(){ 
return client.get('http//localhost:3000/api/posts','callback') 
    .then(data => { 
    console.log(data); 
    return data.response; 
    }) 
} 

And this is the output: Как вы можете видеть на изображении ответ содержит что-то с «Aurelia», но мой api никогда не касался aurelia, поэтому я думаю, что с URL-адресом что-то не так.

Update1:

Исправление предложено GManProgram (отсутствующий :) была проблема.

Update2:

Я изменил к клиенту Аурелия-Fetch-клиент, как предложил GManProgram. Here is the new output Кажется, я поместил адрес из api за его собственным адресом. Могу ли я заставить его использовать только адрес api?

+0

К сожалению, я никогда не видел ваши изменения, и это может быть слишком поздно, нет. Клиент-выборка хорош, если все ваши ресурсы находятся в одном месте с разными конечными точками (например, у вас есть как почта, так и маршрут комментариев на localhost: 3000). Вы можете настроить клиент выборки, чтобы установить baseUrl в нужное место. Обычно, я делаю конфигурацию в main.js и выглядит примерно так: 'httpClient.configure (config => {config.withBaseUrl ('http: localhost: 300/api /');});' веб-вызов так же прост, как «httpClient.fetch (« posts »)' – GManProgram

+0

Аналогично, aurelia-http-client (который похож на клиента aurelia-fetch) можно настроить аналогично – GManProgram

ответ

2

Итак, сначала в примере, который вы опубликовали, вам не хватает символа : после http в URL-адресе.

Если это не исправить, и вы используете HttpClient от aurelia-fetch-client, то вы можете попробовать использовать метод .fetch вместо метода .get

http://aurelia.io/hub.html#/doc/api/aurelia/fetch-client/1.1.0/class/HttpClient

В вашем случае , так как это выглядит, как вы ожидаете, JSON, типичные выборок вызов будет выглядеть следующим образом:

Где можно также импортировать json метод из Aurelia-Fetch-клиента.

В противном случае, возможно, HttpClient уже настроен в приложении с базовым URL-адресом, и он вас закручивает?