在与canInitWithRequest:玩NSURLProtocol时,我找到了NSURLProtocol propertyForKey:inRequest:总是在stopLoading中返回0,但在stopLoading工作得很好
+ (BOOL)canInitWithRequest:(NSURLRequest *)request
{
if ([NSURLProtocol propertyForKey:@"URLProtocolHandledKey" inRequest:request]) {
return NO;
}
return YES;
}
- (void)startLoading
{
NSMutableURLRequest *newRequest = [self.request mutableCopy];
[NSURLProtocol setProperty:@YES forKey:@"URLProtocolHandledKey" inRequest:newRequest];
}
- (void)stopLoading
{
if ([NSURLProtocol propertyForKey:@"URLProtocolHandledKey" inRequest:self.request]) {
NSLog(@"Logging");
}
}我的密码有什么问题吗?
发布于 2014-05-23 09:23:20
NSMutableURLRequest *newRequest = [self.request mutableCopy];在这里创建新对象并设置它的属性,并且在其他实例中期望该属性,这不是正确的方法。
将您的self.request设置为NSMutableURLRequest` `,以便您可以直接传递它。例如:
[NSURLProtocol setProperty:@YES forKey:@"URLProtocolHandledKey" inRequest:self.request];https://stackoverflow.com/questions/23825240
复制相似问题