首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >iOS与AFNetworking的SPDY

iOS与AFNetworking的SPDY
EN

Stack Overflow用户
提问于 2014-03-07 02:17:57
回答 3查看 2.3K关注 0票数 1

我正在为iOS应用程序尝试SPDY,它目前使用AFNetworking (2.1.0)来处理HTTP请求。服务器端,我使用的是Google (用SPDYCheck检查),它对SPDY友好。

下面是我如何将SPDY集成到我的代码中。

我用的是AFHTTPRequestOperationManager

代码语言:javascript
运行
复制
@interface MyClient : AFHTTPRequestOperationManager

我在initWithBaseURL:中嵌入了SPDY

代码语言:javascript
运行
复制
- (id)initWithBaseURL:(NSURL *)url {
    self = [super initWithBaseURL:url];
    if (!self) {
        return nil;
    }

    // SPDY Config
    NSString *spdyURL = [NSString stringWithFormat:@"%@://%@:443",url.scheme, url.host];

    [SPDYURLConnectionProtocol registerOrigin:spdyURL];
    ...
  }

请注意,我的url带有https://myapp.appspot.com/_ah/格式,所以我在传递到SPDY registerOrigin: spdyURL时将它重新格式化,看起来像https://myapp.appspot.com:443

我想这就是我所需要的?但是,在添加SPDY代码之后,我无法发送请求。调试消息显示了以下错误:

代码语言:javascript
运行
复制
error response from api/users/v1/is_token_valid :
Error Domain=NSURLErrorDomain 
Code=-1001 
"The request timed out." 
UserInfo=0xdc2c250 {NSErrorFailingURLStringKey=https://myapp.appspot.com/_ah/api/users/v1/is_token_valid?
user_token=[a_token], 
NSErrorFailingURLKey=https://myapp.appspot.com/_ah/api/users/v1/is_token_valid?
user_token=[a_token], 
NSLocalizedDescription=The request timed out., NSUnderlyingError=0xf270e60 "The request timed out."}

我一点也不知道。希望在iOS上有SPDY经验的人能帮上忙!

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-03-07 12:18:10

不幸的是,苹果的TLS实现不支持NPN,而NPN是由Google使用的。你可以在CocoaSPDY GitHub自述上读到更多关于它的信息。

此时你不能在中使用CocoaSPDY。

票数 2
EN

Stack Overflow用户

发布于 2014-03-08 21:59:40

的确,在默认的TLS实现中,Apple不支持NPN。然而,有一些SPDY库使用OpenSSL (它支持NPN)。

下面是其中的一个:https://github.com/locationlabs/SPDY-for-iPhone

票数 3
EN

Stack Overflow用户

发布于 2015-08-18 08:46:01

你觉得可以吗?我看到SPDY协议支持现在已经在NSURLSession和iOS 8上的NSURLSession中可用,并且被NSURLSession透明地支持。参见详细信息:https://developer.apple.com/videos/wwdc/2014/,什么是基础网络中的新内容,但为什么它不起作用?当我使用manager.session.configuration.protocolClasses=@[SPDYURLSessionProtocol时,设置CocoaSPDY类];没关系;

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22240179

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档