1

我正在尝试使用 iPhone 拨打网络电话。我以前做过这个,它工作正常,但现在我不能让它工作。我正在尝试使用文档说在 2.0 及更高版本中可用的以下方法调用:

- (void)addValue:(NSString *)value forHTTPHeaderField:(NSString *)field;

我正在尝试为版本 3.2 和 4.0 构建。

NSMutableURLRequest *request = [NSURLRequest 
                                requestWithURL:url 
                                cachePolicy:NSURLRequestReloadIgnoringCacheData 
                                timeoutInterval:30];

[request addValue:@"0" forHTTPHeaderField:@"Content-Length"];

我得到的错误是运行时错误,它说

"-[NSURLRequest addValue:forHTTPHeaderField:]: unrecognized selector sent to instance 0x600e0c0"

谁能告诉我我错过了什么阻止此代码工作?

谢谢。

4

1 回答 1

2

您正在初始化 NSURLRequest 而不是 NSMutableURLRequest。您可能会收到关于它的编译器警告,但运行时会强制强制转换为不可变的超类。在您尝试发送不可变超类没有的消息之前,它一直有效。

于 2010-06-11T15:02:15.137 回答