Xcode WKWebView - ошибка: NetworkProcessProxy не может получить параметры CacheStorage из заданного идентификатора сеанса - PullRequest
0 голосов
/ 14 февраля 2020
[CacheStorage] 0x7fd9d7c0w20 - NetworkProcessProxy is unable to retrieve CacheStorage parameters from the given session ID 9223372036854825810

Похоже, что это источник ошибки: https://github.com/apple-open-source/macos/blob/feebbd313e18951891bb56cd2a6a274039d2ac07/WebKit2/UIProcess/Network/NetworkProcessProxy.cpp#L664 или https://github.com/ur0/webkit-source/blob/474163e70412a2f0ff3a80b961dea1bb9e000041/WebKit/UIProcess/Network/NetworkProcessProxy.cpp#L1138

auto* store = websiteDataStoreFromSessionID(sessionID);

     if (!store) {
 RELEASE_LOG_ERROR(CacheStorage, "%p - NetworkProcessProxy is unable to retrieve CacheStorage parameters from the given session ID %" PRIu64, this, sessionID.toUInt64());

Контекст: я создаю простой приложение, которое использует эту библиотеку https://github.com/LinusU/Marionette для управления WKWebview через NagivationDelegate.

Эта ошибка возникает при входе на определенные сайты, например: мой онлайн-банкинг для проверки баланса моей кредитной карты.

Я попытался отключить WebCache с помощью быстрого моста к цели c Интерфейс WebCache:

obj- c file

@interface WebCache : NSObject
+ (void)empty;
+ (void)setDisabled:(BOOL)arg1;
+ (void)disabled:(BOOL)arg1;
@end

.swift

 WebCache.setDisabled(true)
    let cacheRecords : Set<String> = [WKWebsiteDataTypeMemoryCache, WKWebsiteDataTypeFetchCache]
           WKWebsiteDataStore.default().fetchDataRecords(ofTypes: cacheRecords) { records in
               print(records)
           }

и я пробовал:

webView.load(URLRequest(url: url, cachePolicy: NSURLRequest.CachePolicy.reloadIgnoringLocalAndRemoteCacheData))

Который, казалось, ничего не делал.

Как решить эту проблему с кешем?

...