Я не понимаю, что вы хотите получить, потому что вы не предоставили примерный результат,
однако попробуйте это - измените строку:
.map(res => res.json())
до
.map(res => res.json().MyValues )
используя это, вы получите на верхнем уровне аналогичный массив, как в ссылке, которую вы предоставили в комментарии ниже вашего вопроса: https://jsonplaceholder.typicode.com/users
ОБНОВЛЕНИЕ (после обновления вопроса 9.10.2018)
В настоящее время .map(res => res.json())
возвращает объект с двумя полями (переменными) «FirstResponse» и «SecondResponse». Вы можете получить к нему доступ, например (я пишу код из головы):
public async loadData()
{
let data = await this.yourService.search().toPromise();
let firstVariable = data.FirstResponse;
let secondVariable = data.SecondResponse;
...
}
Так что, как вы описываете в своем вопросе / комментариях в loadData (), вы получите результат в двух переменных, как вы хотите.
Или альтернативный ответ - если вы хотите сделать это внутри search (), вы можете сделать это таким образом, например:
search(): Observable<any> {
let apiURL = `......`;
return this.http.get(apiURL)
.map( (res) => {
let data = res.json();
return {
firstVariable: data.FirstResponse,
secondVariable: data.SecondResponse,
}
})
}