How does NSURLCache determine that it has a cached response for a request? It's not clear to me how equality between two NSURLRequests is defined or how they are hashed.
How does [NSURLCache cachedResponseForRequest:] do its matching?
937 Views Asked by Ben Flynn At
1
There are 1 best solutions below
Related Questions in IOS
- URLSession requesting JSON array from server not working
- Incorrect display of LinearGradientBrush in IOS
- Module not found when building flutter app for IOS
- How to share metadata of an audio url file to a WhatsApp conversation with friends
- Occasional crash at NSURLSessionDataTask dataTaskWithRequest:completionHandler:
- Expo Deep linking on iOS is not working (because of Google sign-in?)
- On iOS, the keyboard does not offer a 6-character SMS code
- Hi, there is an error happened when I build my flutter app, after I'm installing firebase packages occurs that error
- The copy/paste functionalities don't work only on iOS in the Flutter app
- Hide LiveActivityIntent Button from Shortcuts App
- While Running Github Actions Pipeline: No Signing Certificate "iOS Development" found: No "iOS Development" signing certificate matching team ID
- Actionable notification api call not working in background
- Accessibility : Full keyboard access with scroll view in swiftui
- There is a problem with the request entity - You are not allowed to create 'iOS' profile with App ID 'XXXX'
- I am getting "binding has not yet been initialized" error when trying to connect firebase with flutter
Related Questions in CACHING
- Using Puppeteer to scrape a public API only when the data changes
- Caching private wordpress rest endpoints
- Cloudflare not respecting Cache-Control
- Unexpected Recursive Call
- Cannot serialize (Spring Boot)
- Nginx only caches file endpoints
- The Selenium application properties folder holds two environment options. After running a test the environment setting changes to a previous setting
- Launch jobs in cache in a loop in bash script
- Multiple async request do not store anything to cache
- Dev tool for Next.js cache on the client?
- Creating a letter in the terminal by entering
- Laravel: check if cache has key with thag
- The retrieval time for the Apache Ignite cache is too long
- How to run gradle with caches files
- Docker Run cache mount does not cache apt-get dependencies
Related Questions in NSURLREQUEST
- NSURLSessionDownloadTask results in 404 status when server issues a redirect
- Delete all WKWebView and URLSession related cached data
- SwiftUI: API fetch call in background
- Swift: URLSession or URLRequest adds extra headers. How to omit them?
- Swift UrlSession Multipart/form-data Upload Array Of Images
- URLSession doesn't work with GET API call
- URLSessionDataTask - upload parameters with multipart/form-data content type
- How to remove paramters in NSURL's query in iOS?
- swiftUI : How I can try to do POST API Call with parameters and headers
- Can you have synchronous but non-blocking URLSesssions?
- How to access twitter filter search stream api on ios
- Load urlrequest in the wkwebview when app is in background state
- Can WKWebView support encoded url?
- Passing header data with a URLSession in a MacOS app, getting nil response
- No value associated with key in URLRequest Swift
Related Questions in NSURLCACHE
- URLSession and URLCache not working as expected
- NSURLCACHE policy to update cache data if website is reachable and so always load cache
- WKWebView doesn't use URLCache
- Alamofire Cache not found
- Server access possible with wrong credentials after initial successful authentication
- URLCache and eviction control
- What is the difference between URLCache.cachedResponse(for:) and URLCache.getCachedResponse(for:completionHandler:) ?
- NSURLCaching with dataTask fails to read Cache back with NSURLRequest when offline
- URLCache (iOS). storeCachedResponse works asynchronously. How to catch the completion?
- swift URLCache after IOS 12 update
- How to clear cache for a URL in URLCache.shared?
- URLresponse is not retrieved after storing in cache using storeCachedResponse
- How to set iOS cache and disk storage size and how does cache get restored from disk storage after app termination?
- NSURLCache, together with NSURLSession, does not respect: Cache-Control: max-age:86000, private, must-revalidate
- How to override Alamofire SessionManager to modify response in order to add headers?
Related Questions in NSURLREQUESTCACHEPOLICY
- NSURLCACHE policy to update cache data if website is reachable and so always load cache
- Expiration of CachedURLResponse not working
- Which Cache Policy should be used?
- IOS - WKWebview gets null url in decidePolicy when second clicking the same button
- Is data coming from cache?
- How to configure URLSessionConfiguration so that cached data lasts only 5 minutes (Backend doesn't handle expiration time)
- is network cache stays after iOS application is removed and reinstall
- (iOS bug?) NSURLRequest cached authorization passes with incorrect credentials
- How to get cached responses using Alamofire while app is in offline?
- Caching won't work in UIWebView
- NSURLRequestReloadIgnoringLocalCacheData does not work
- NSURLSession convert image during uploading
- configuration for NSMutableURLRequest, that cachePolicy is always ReloadIgnoringLocalAndRemoteCacheData
- AFNetworking: Cache.db created but cache-control → no-cache in server response heder
- NSURLRequestCachePolicy.UserProtocolCachPolicy requirements
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular # Hahtags
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
NSURLCachehas a property calledcachePolicythat can be used to specify the caching behavior to be used. The default isNSURLRequestUseProtocolCachePolicywhich means that the caching logic is defined by the protocol implementation (which is HTTP in most cases).The author of AFNetworking has written an article that explains the differences between each policy, and how the default policy behaves for the HTTP protocol: NSURLCache - NSHipster.
As far as the implementation of the
+[NSURLProtocol requestIsCacheEquivalent:toRequest:]method, this is what I was able to get from decompiling it. I can't guarantee it's 100% accurate, but it seems to make sense: