Это для моего понимания я задаю этот вопрос.
Мой клиент говорит, что он может видеть ответ службы в папке кэша, если устройство имеет root / jailbreak. Я использую HTTPS
.
import { HttpClient, HttpHeaders, HttpEventType, HttpEvent } from '@angular/common/http';
APIBASEURL = "https://........"
//MARK:- HTTP GET method
getServiceData(path: string) {
var APIFULLURL = this.APIBASEURL + path;
let headers = new HttpHeaders();
headers = headers.set('Content-Type', 'application/json; charset=utf-8');
headers = headers.set("Content-Encoding", 'gzip')
headers = headers.set('Accept', 'application/json;charset=utf-8')
headers = headers.set('Authorization', this.APIHeaderKey);
headers = headers.set('Cache-control', 'no-cache');
headers = headers.set('Cache-control', 'no-store');
headers = headers.set('Expires', '0');
headers = headers.set('Pragma', 'no-cache');
//*****************Service Log ********************//
console.log("==URL ===" + APIFULLURL);
//*****************Service Log ********************//
const req = new HttpRequest('GET', APIFULLURL,{
headers: headers,
reportProgress: true,
withCredentials : true
});
return this.http.request(req).timeout(50000)
}
//MARK:- HTTP POST method
postService(path: string, isLogin: boolean, serviceBody: any) {
let headers = new HttpHeaders();
headers = headers.set('Content-Type', 'application/json; charset=utf-8');
headers = headers.set("Content-Encoding", 'gzip')
headers = headers.set('Accept', 'application/json')
headers = headers.set('Authorization', this.APIHeaderKey)
headers = headers.set('Cache-control', 'no-cache');
headers = headers.set('Cache-control', 'no-store');
headers = headers.set('Expires', '0');
headers = headers.set('Pragma', 'no-cache');
var APIFULLURL = this.APIBASEURL + path;
//*****************Service Log ********************//
console.log("==URL ===" + APIFULLURL);
//*****************Service Log ********************//
try {
return this.http.post(APIFULLURL, JSON.stringify(serviceBody), { headers: headers, withCredentials : true} ).timeout(50000);
} catch (error) {
console.log(error);
alert("Error" + error)
}
}
когда я вызываю службу API, httpclient
сохраняет ответ в кеше. Я не сохраняю вручную в кеш или локальное хранилище.
Проблема заключается в том, чтобы сначала установить и получить доступ к приложению, затем сделать джейлбрейк / рутирование, перейти непосредственно в папку кеша и увидеть текст ответа службы.
Как я могу зашифровать это значение кэша? по моим сведениям, перед процессом HttpClient
сохраните в кеше.
Подскажите, пожалуйста, как зашифровать ответ сервиса в кеше.
Это проблема с высоким уровнем серьезности в моем приложении.
Как отключить 'HttpClient
, чтобы сохранить его в кеше?