У меня есть следующий код для использования внутреннего API, обслуживаемого приложением Play. API http://localhost:9000/ws/users/get
работает, если я набираю его как есть в окне браузера (я вижу ответ hello from get user controller
в окне, а также отладочную печать `получить запрос пользователя в моем игровом приложении), но код Angular, похоже, ничего не отправляет в бэкэнд (я вообще не вижу никаких отладок ни в игре, ни в окне браузера).
Вопрос 1. Как я могу отладить, куда Angular отправляет сообщение. Вопрос 2. Почему код не работает?
import { Injectable } from '@angular/core';
import { environment } from 'environments/environment';
import {Observable} from "rxjs/Observable";
import 'rxjs/add/operator/map';
import 'rxjs/add/operator/catch';
import 'rxjs/add/observable/throw';
import { HttpClient} from '@angular/common/http';
import {User} from "./user";
@Injectable()
export class WebToBackendInterfaceService {
API_URL = environment.apiUrl;
ADD_USER_URL = environment.addUserUrl;
GET_USER_URL = environment.getUserUrl;
constructor(private http:HttpClient) { }
public createUser(user:User):any{
console.log('contacting server at '+this.API_URL +this.ADD_USER_URL +" with user data ",user); //if I click this link directly fro browser's debug window then I see response from the server
this.http.post(this.API_URL +this.ADD_USER_URL,user)
.map(response => {
console.log('response from backend service',response);
return response;
})
.catch(this.handleError); //error handler if Observable fails
}
public getUser(id:string):any{
console.log('contacting server at '+this.API_URL +this.GET_USER_URL +" with user data "+id);
this.http.get(this.API_URL+this.GET_USER_URL)
.map(response=>{
console.log('response from backend service',response);
return response;
})
.catch(this.handleError);
}
private handleError (error: Response | any) {
console.error('WebToBackendInterfaceService::handleError', error);
return 'error from the server:'+error;
}
}