如何解决接收401时,ASIHttpRequest响应数据/标头为空
|| 每当服务器返回401时,ASIHTTPRequest的响应数据和标头字段始终为null。 我只能读取状态代码和设置为ASIAuthenticationErrorType的NSError代码。我正在使用Charles Web代理嗅探流量。我可以清楚地看到服务器正在返回一个非空的响应正文。 我尝试实现authenticationNeededForRequest:委托以查看响应数据是否为null。但是,永远不会调用此委托方法。 这是我用来初始化网络队列的代码:networkQueue = [[ASINetworkQueue alloc] init];
[networkQueue setDelegate:self];
[networkQueue setRequestDidFinishSelector:@selector(requestDidFinish:)];
[networkQueue setRequestDidFailSelector:@selector(requestDidFail:)];
并发送请求
ASIHTTPRequest * request = [ASIHTTPRequest requestWithURL:apiURL];
request.delegate = self;
request.userInfo = userInfo;
[request setRequestMethod:method];
[networkQueue addOperation:request];
[networkQueue go];
谢谢!
解决方法
显然,这是以前版本的ASIHttpRequest中的错误。它应该固定在当前版本上。
, 如果已实现委托方法
-(void)请求:(ASIHTTPRequest *)请求didReceiveData:(NSData *)data
然后,responseData将为null。因为API会将数据处理移交给应用程序。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。