[iOS] HTTP Cookie
2024. 3. 24. 21:09
Swift에서 WKHTTPCookieStore를 사용하여 쿠키를 관리할 수 있다.
WKHTTPCookieStore(Class) : 특정 웹뷰와 관련된 HTTP Cookie를 관리하는 개체
- 웹페이지의 초기 쿠키를 지정하고 웹 콘텐츠의 쿠키를 관리할 때 사용
- 예를 들어 사용자가 로그아웃을 할 때 현재 세션에 대한 쿠키를 WKHTTPCookieStore을 이용하여 쿠키를 삭제할 수 있음
쿠키 관리
// 저장된 모든 쿠키를 비동기로 가져와 지정된 completionHandler에 전달
func getAllCookies(([HTTPCookie]) -> Void){}
// WKHTTPCookieStore에 쿠키를 추가
func setCookie(HTTPCookie, completionHandler: (() -> Void)?){}
// 지정된 쿠키를 삭제
func delete(HTTPCookie, completionHandler: (() -> Void)?){}
쿠키 저장 허용
// WKHTTPCookieStore가 쿠키 저장을 허용하는지 여부를 나타내는 WKHTTPCookieStore.CookiePolicy를 return
func getCookiePolicy((WKHTTPCookieStore.CookiePolicy) -> Void) {}
// WKHTTPCookieStore에서 쿠키 저장을 허용하는지 여부를 나타내는 CookiePolicy를 설정
func setCookiePolicy(WKHTTPCookieStore.CookiePolicy, completionHandler: (() -> Void)?){}
// WKHTTPCookieStore가 쿠키 저장을 허용하는 지 여부를 나타나는 case가 포함된 enum
enum WKHTTPCookieStore.CookiePolicy{
case allow // 쿠키 저장을 허용
case disallow // 쿠키 저장을 허용하지 않음
}
WKHTTPCookieStoreObserver
// WKHTTPCookieStore에 Observer 추가
func add(any WKHTTPCookieStoreObserver){}
// WKHTTPCookieStore에 Observer 제거
func remove(any WKHTTPCookieStoreObserver){}
// 웹페이지 쿠키의 변경사항을 모니터링 하는 개체에 채택할 메서드
protocol WKHTTPCookieStoreObserver{
// WKHTTPCookieStore의 쿠키가 변경되었을 때
func cookiesDidChange(in: WKHTTPCookieStore)
}
참고
728x90
'iOS > Swift' 카테고리의 다른 글
[iOS/WebKit] Completion handler passed to [webView:decidePolicyForNavigationAction:decisionHandler:] was called more than once 오류 (1) | 2024.06.09 |
---|---|
[Swift] DispatchQueue (3) - DispatchGroup (0) | 2024.04.20 |
[iOS] WKScriptMessageHandler (0) | 2024.03.16 |
[iOS] WKUIDelegate (0) | 2024.03.16 |
[iOS] WKNavigationDelegate (0) | 2024.03.16 |