Notice
Recent Posts
Recent Comments
Link
투케이2K
5. (TWOK/LOGIC) [IOS] WkWebview 웹뷰 COOKIE 쿠키 공유 방법 정리 [2] [로딩 속도 개선] 본문
투케이2K 로직정리
5. (TWOK/LOGIC) [IOS] WkWebview 웹뷰 COOKIE 쿠키 공유 방법 정리 [2] [로딩 속도 개선]
투케이2K 2022. 5. 4. 10:50[로직 정리]
정리 로직 : MOBILE (IOS)
상태 : [IOS] WkWebview 웹뷰 COOKIE 쿠키 공유
[설 명]
[IOS]
1. 웹뷰 웹뷰 초기 설정 셋팅 수행 실시 및 로드 하기 (전) 웹뷰 헤더 쪽에 쿠키 삽입 , 웹뷰 로드 수행 실시
- 쿠키 추가 셋팅 위함 : 웹뷰 WKWebViewConfiguration.websiteDataStore 설정을 >> WKWebsiteDataStore.nonPersistent() 로 설정
- 헤더 쪽 쿠키 삽입 실시 : URLRequest.addValue("데이터", forHTTPHeaderField: "Cookie")
- 웹뷰 로드 실시 : webview.load(request)
2. WKUserContentController 부분 자바스크립트 통신 브릿지 추가 부분에서 addUserScript 를 사용해서 쿠키 String 값 설정 실시
// -----------------------------------------
// MARK: [자바스크립트 통신 브릿지 경로 추가]
self.javascriptController.add(self, name: "setCopyData") // [로그 데이터 복사 브릿지 경로]
// -----------------------------------------
// MARK: [쿠키 값 널 여부 체크 실시 >> 웹뷰 로드 시 사전 쿠키 값 설정 실시]
if C_Util().stringNotNull(str: self.cookieString) == true {
var cookies = "document.cookie='"
cookies += self.cookieString // [형태 : JSESSIONID=6271da11ad66ebe633666666;domain=m.test.ac.kr;path=/;]
cookies += "'"
let cookieScript = WKUserScript(source: cookies, injectionTime: .atDocumentStart, forMainFrameOnly: false)
self.javascriptController.addUserScript(cookieScript) // [쿠키 스트링 추가]
print("")
print("===============================")
print("[A_ChildWebview >> addJavaScriptBridge() :: 자바스크립트 통신 브릿지 추가]")
print("cookieString [원본] :: \(self.cookieString)")
print("cookies [포맷] :: \(cookies)")
print("로 직 :: 웹뷰 쿠키 값 사전 설정 실시")
print("===============================")
print("")
}
// -----------------------------------------
3. decidePolicyFor 실시간 웹뷰 주소 변경 상태 체크 부분에서 allow 처리 및 정상적으로 쿠키를 가지고 페이지 이동 처리가 되는지 확인
- 웹뷰 저장된 쿠키 목록 확인 : webview.configuration.websiteDataStore.httpCookieStore.getAllCookies
반응형
'투케이2K 로직정리' 카테고리의 다른 글
7. (TWOK/LOGIC) [모바일] 웹뷰 (webview) 사용 시 로딩 (loading) 속도 향상 및 디스크 캐시 사용 실시 (0) | 2022.08.26 |
---|---|
6. (TWOK/LOGIC) [Android] Webview 웹뷰 로딩 완료 상태 감지 및 로딩 화면 닫기 처리 (0) | 2022.07.18 |
4. (TWOK/LOGIC) [IOS] WkWebview 웹뷰 COOKIE 쿠키 공유 방법 정리 (0) | 2022.03.18 |
3. (TWOK/LOGIC) [모바일] 프로세스 생명주기 상태 관리 (create , destroy) (0) | 2022.02.14 |
2. (TWOK/LOGIC) [모바일] 웹뷰 (webview) 사용 시 쿠키 (cookie) 설정 방법 (2) | 2022.02.14 |
Comments