我在试图让AFNetworking工作,因为这是我的第一个应用程序,它不得不处理客户端/服务器,我试图从需要用户名/密码的HTTPS服务器获取JSON。我有点迷上了应用程序,但它一直抛出一个401错误,我把它看成基本身份验证问题。AFNetworking NTLM身份验证?
我基本上采用了AFNetworking的twitter示例,并将其改编为我的项目。在AFHTTPClient的子类中,我在initWithBaseURL中添加了另一行,它仍然会抛出错误。我加入的直线是setAuthorizationHeaderWithUsername
- (id)initWithBaseURL:(NSURL *)url {
self = [super initWithBaseURL:url];
if (!self) {
return nil;
}
[self registerHTTPOperationClass:[AFJSONRequestOperation class]];
// Accept HTTP Header; see http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1
[self setDefaultHeader:@"Accept" value:@"application/json"];
[self setAuthorizationHeaderWithUsername:@"myusername" password:@"my password"];
return self;
}
我与基于会话的定制身份验证方案专门工作;但我想知道是否最好通过确保HTTP验证与AFNetworking位单独工作来诊断。有一些OS X应用程序可以让你做到这一点,例如[可可其余客户端(http://code.google.com/p/cocoa-rest-client/)。一旦您确信端点身份验证正在运行,您可以返回到处理iOS应用程序中的AFNetworking部分。 – FluffulousChimp
我刚刚意识到服务器不支持基本身份验证,而是NTLM ......这是否意味着AFNetworking不适用于我的目的?我对网络很陌生,我正在学习。非常感谢您回复此主题! – Alan