Notice
Recent Posts
Recent Comments
Link
투케이2K
99. (TWOK/ERROR) [Android/Ios] http 요청 시 캐싱 (cache) 된 응답 값이 내려오는 이슈 - okhttp , URLSession 본문
투케이2K 에러관리
99. (TWOK/ERROR) [Android/Ios] http 요청 시 캐싱 (cache) 된 응답 값이 내려오는 이슈 - okhttp , URLSession
투케이2K 2022. 9. 13. 14:58[환경 설정 및 설명]
프로그램 : AndroidStudio / Xcode
설 명 : http 요청 시 캐싱 (cache) 된 응답 값이 내려오는 이슈 - okhttp , URLSession
[에러 원인]
1. http 요청 시 요청 헤더 값에 Cache-Control 이 캐싱으로 설정되어 있어서 발생하는 이슈
[해결 방법]
1. http 요청 헤더 값에 Cache-Control no-cache 설정 실시
[안드로이드]
// [OK HTTP 객체 선언 실시]
//OkHttpClient client = new OkHttpClient();
OkHttpClient client = new OkHttpClient.Builder()
.connectTimeout(10, TimeUnit.SECONDS) // [커넥션 제한 시간]
//.readTimeout(5, TimeUnit.SECONDS)
//.writeTimeout(5, TimeUnit.SECONDS)
.retryOnConnectionFailure(false)
.build();
Request.Builder request = new Request.Builder();
HttpUrl.Builder httpBuilder = HttpUrl.get(URI.create(url)).newBuilder();
request.addHeader("Content-Type", "application/x-www-form-urlencoded; charset=utf-8;"); // [헤더]
request.addHeader("Cache-Control", "no-cache"); // [헤더]
// [httpBuilder 추가]
request.url(httpBuilder.build());
[IOS]
// [http 비동기 방식을 사용해서 파일 다운로드 및 저장 수행 실시]
var urlComponents = URLComponents(string: fileUrl)
var requestURL = URLRequest(url: (urlComponents?.url)!)
requestURL.httpMethod = "GET" // GET
requestURL.addValue("application/x-www-form-urlencoded; charset=utf-8;", forHTTPHeaderField: "Content-Type") // 헤더
requestURL.addValue("no-cache", forHTTPHeaderField: "Cache-Control") // 헤더
반응형
'투케이2K 에러관리' 카테고리의 다른 글
Comments