Per il mio ionic.config.json
ho:I proxy Ionic2 non funzionano con ionic run ma funzionano con ionic serve?
{
"name": "TSICMobile",
"app_id": "6e4680fa",
"typescript": true,
"v2": true,
"proxies": [
{
"path": "/api",
"proxyUrl": "http://192.168.0.105:8081/api"
}
]
}
Nel mio fornitore (user-data.ts
, sulla base di Ionic2 conferenza app) che ho per esempio:
login(credentials) {
return new Promise((resolve, reject) => {
this.http.post(
'/api/Login',
JSON.stringify(credentials),
{ headers: this.contentHeader }
).subscribe(res => {
console.log('api/Login return');
this.data = res.json();
if (this.data.authenticated === true) {
this.storage.set('TSIC_USER_PROFILE', JSON.stringify(this.data.tsiC_USER_PROFILE));
this.storage.set('TSIC_USER_ROLES', JSON.stringify(this.data.listRoles));
this.storage.set('tsic_id_token', this.data.token);
this.events.publish('user:login');
resolve(true);
} else {
reject('not authenticated');
}
}, error => {
console.log('api/Login failed');
reject(error);
});
});
}
durante l'esecuzione:
ionic serve --lab -c
la il proxy funziona perfettamente e invia messaggi a http://192.168.0.105:8081/api/Login
durante l'esecuzione
ionic run android -c
post url è file://api/Login
, e, ovviamente, non riesce.
Hai bisogno di assistenza per capire perché (apparentemente), il proxy non ha effetto quando si esegue sul dispositivo e cosa potrei fare storto o non capire.
risposto alla mia domanda, "proxy", in base alla documentazione ionico si applica solo in ambiente "serve" (test del browser). –
Sai se esiste un'altra soluzione per utilizzare un server proxy sul dispositivo? – error1337
@ToddGreenwald anche io ho avuto lo stesso problema. hai trovato qualche soluzione per quello? – Sethu