ASIHTTP(arc) to AFNetworing(2.5)迁移 过NTLM验证设置方法
来源:互联网 发布:directx游戏编程 编辑:程序博客网 时间:2024/06/05 08:35
12年开始接触开发到现在一直都是迷恋asi的一套东西,并且asi也有了自己的arc并且是有维护的版本;故每次的项目我还是“投机取巧”用原来的网络请求库。
上周“师傅”来找我,我问道他用神马的时候,突然觉得自己的big低了些,于是乎开始在github看了下af的,本着开放包容的心态写个简单的测试看能否满足我原来接口环境的需要。由于之前的接口是用.net开发的部署的访问环境大多也是IIS的一套东西,神马basic,wiondows,ntlm验证。这里重点说下NTLM验证
http://xxxx.xxxx.com:8888/MobileService/MobileHandler.ashx?action=GetHomeData,历史原因不是restful风格的;访问这个地址的时候需要过NTLM验证后,才能进行后面的比如表单值提交等等。
ASI里面的两条语句可以让你忽略繁琐的设置,这也是它的强大之处。
[req setusername:]
[req setpassword:]
尽管我这里测试的是NTLM验证,这种方式对basic也就用的,细心的同学断点调试会发现这是asi封装了进行身份验证的最上层的方法,而在asi的实现部分(nsurlconnection中的回调方法)会先去判断不是ntlm还是basic然后传对应的“凭证”。
那么如果在af(version:2.5)里面的话我们还是需要多写句给operation设置凭证,即可。
NSURLCredential *credential = [NSURLCredentialcredentialWithUser:[@"yourdomain\\"stringByAppendingString:@"zhaoyun"]password:@"pwd"persistence:NSURLCredentialPersistenceNone];
AFHTTPRequestOperation *operation = [[AFHTTPRequestOperationalloc] initWithRequest:req];
[operationsetCredential:credential];
[operationsetCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation,id responseObject) {
NSLog(@"the result is %@",[operationresponseString]);
}failure:^(AFHTTPRequestOperation *operation,NSError *error) {
NSLog(@"the error is %@",error);
}];
参考地址:
http://www.raywenderlich.com/forums/viewtopic.php?f=2&t=18385
- ASIHTTP(arc) to AFNetworing(2.5)迁移 过NTLM验证设置方法
- NSURLRequest过BASIC验证、NTLM验证、以及UIWebView登录路由器
- 另一种取消NTLM验证的方法
- AFNetWoring 设置超时时间
- LM/NTLM验证机制
- LM/NTLM验证机制
- LM/NTLM验证机制
- NTLM验证过程
- LM/NTLM验证机制
- NTLM验证过程
- HttpClient解决ntlm验证
- ASIHTTP
- ASIHttp
- 去掉TELNET中的NTLM验证
- ios 迁移至ARC版本说明(Transitioning to ARC Release Notes)
- ASIHTTP上传进度的修正设置
- arc to no arc
- ntlm
- WebKit.net最简单使用方法
- [leetcode]Longest Valid Parentheses
- SEO实战:用户需求分析,助力网站排名
- JavaScript中判断为整数的多种方式
- Robotium中文API(21)-solo.waitForActivity
- ASIHTTP(arc) to AFNetworing(2.5)迁移 过NTLM验证设置方法
- 如何理解消息推送成功送达率
- make menuconfig显示错误“Your display is too small to run Menuconfig!”
- Robotium中文API(22)-solo.waitForDialogToClose
- Shader其他整理
- Robotium中文API(23)-solo.waitForDialogToOpen
- Ubuntu + Eclipse + ADT搭建Android开发环境
- 第331天(36W)
- Robotium中文API(24)-solo.waitForFragmentById