투케이2K

151. (Objective-C/objc) [간단 소스] WKWebView getAllCookies 사용해 웹뷰에 저장 된 쿠키 값 확인 - NSArray NSHTTPCookie 본문

Objective-C

151. (Objective-C/objc) [간단 소스] WKWebView getAllCookies 사용해 웹뷰에 저장 된 쿠키 값 확인 - NSArray NSHTTPCookie

투케이2K 2024. 9. 20. 20:10

[개발 환경 설정]

개발 툴 : XCODE

개발 언어 : OBJECTIVE-C

 

[소스 코드]

 

    // ----------------------------------------------------------------------
    // [Objc 웹뷰 생성 관련 참고 사이트] 
    // ----------------------------------------------------------------------
    // https://blog.naver.com/kkh0977/222869355159?trackingCode=blog_bloghome_searchlist
    // ----------------------------------------------------------------------





    // ----------------------------------------------------------------------
    // [Objc WKWebsiteDataStore 캐시 삭제 관련 참고 사이트] 
    // ----------------------------------------------------------------------
    // https://blog.naver.com/kkh0977/223589028787
    // ----------------------------------------------------------------------
    // https://blog.naver.com/kkh0977/223589026702
    // ----------------------------------------------------------------------





    // ----------------------------------------------------------------------
    // [WKWebsiteDataStore 캐시 삭제 관련 종류] 
    // ----------------------------------------------------------------------
    // WKWebsiteDataTypeDiskCache
    // WKWebsiteDataTypeOfflineWebApplicationCache
    // WKWebsiteDataTypeMemoryCache
    // WKWebsiteDataTypeLocalStorage
    // WKWebsiteDataTypeCookies
    // WKWebsiteDataTypeSessionStorage
    // WKWebsiteDataTypeIndexedDBDatabases
    // WKWebsiteDataTypeWebSQLDatabases
    // WKWebsiteDataTypeFetchCache (iOS 11.3, *)
    // WKWebsiteDataTypeServiceWorkerRegistrations (iOS 11.3, *)
    // ----------------------------------------------------------------------





    // ----------------------------------------------------------------------
    // [웹뷰에 저장 된 캐시 리스트 확인] : [WKWebview] : NSArray NSHTTPCookie
    // ----------------------------------------------------------------------
    if (@available(iOS 11.0, *)) {
      [webView.configuration.websiteDataStore.httpCookieStore
          getAllCookies:^(NSArray<NSHTTPCookie *> *_Nonnull cookies) {

            // [cookies 저장된 쿠키 리스트 확인 및 로직 처리] 
            for (NSHTTPCookie* cookie in cookies)
            {
                NSLog(@"%@, ", [cookie valueForKey:@"version"]);
                NSLog(@"%@, ", [cookie valueForKey:@"name"]);

                NSString * this = [cookie valueForKey:@"name"];

                NSLog(@"%@, ", [cookie valueForKey:@"value"]);
                NSLog(@"%@, ", [cookie valueForKey:@"expiresDate"]);
                NSLog(@"%@, ", [cookie valueForKey:@"created"]);
                NSLog(@"%@, ", [cookie valueForKey:@"sessionOnly"]);
                NSLog(@"%@, ", [cookie valueForKey:@"domain"]);
                NSLog(@"%@, ", [cookie valueForKey:@"path"]);
                NSLog(@"%@, ", [cookie valueForKey:@"isSecure"]);
            }

          }];
    }
    // ----------------------------------------------------------------------

 

반응형
Comments