gpt4 book ai didi

iOS :[NSURLProtocol propertyForKey:inRequest:] return nil

转载 作者:行者123 更新时间:2023-11-29 02:56:31 24 4
gpt4 key购买 nike

在使用 NSURLProtocol 时,我发现 [NSURLProtocol propertyForKey:inRequest:]stopLoading 中总是返回 nil,但对于 canInitWithRequest: 效果很好

+ (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");
}
}

我的代码有什么问题吗?

最佳答案

NSMutableURLRequest *newRequest = [self.request mutableCopy];

您在此处创建新对象并设置其属性,而您期望在其他实例中使用该属性,这不是正确的方法。

将您的 self.request 设为 NSMutableURLRequest` 以便您可以直接传递它。例如

[NSURLProtocol setProperty:@YES forKey:@"URLProtocolHandledKey" inRequest:self.request];

关于iOS :[NSURLProtocol propertyForKey:inRequest:] return nil,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23825240/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com