Я исследую кэш-попадания и промахи в своем собственном подклассе NSURLProtocol. У меня есть запрос, который выглядит так (из UIWebView)
https://www.my.server/?myqueryParams
На данный момент я использую простые сравнения строк в URL-адресах:
+ (BOOL)requestIsCacheEquivalent:(NSURLRequest *)a toRequest:(NSURLRequest *)b
{
bool equal = [a.URL.absoluteString isEqualToString:b.URL.absoluteString];
NSLog(@"A: %@, B: %@", a.URL.absoluteString, b.URL.absoluteString);
return equal;
}
Что я вижу в журналах, так это то, что «а» имеет завершающую косую черту. Это выглядит так:
a -> https://www.my.server/?myqueryParams/
b -> https://www.my.server/?myqueryParams
Я пытаюсь отладить, откуда может исходить эта косая черта. Я понимаю, что я даже не знаю, что отвечает за вызов этого метода - у него очень ограниченная обратная трассировка.
Откуда берутся «а» и «б»? И откуда могла взяться эта косая черта?