APP开发通常有2种认证方式 一种是Basic Auth,一种是OAuth;现在普遍还是使用OAuth的多,而使用Basic Auth认证的少,Badic Auth认证方式开发和调试简单, 没有复杂的页面跳转逻辑和交互过程,更利于发起方控制。然而缺点就是安全性更低,不过也没事,我们可以使用https安全加密协议,这样才更安全。
我使用的是AFNetworking发送的网络请求,因此我们用Basic Auth认证方式就不能再使用AFN的默认的GET或者POST请求,而是自己定义的NSMutableRequest请求,使用AFN发送,如下面代码(无论是网页时还其它,这个几乎都是可以用的):
NSURL *url=[NSURL URLWithString:@"http://write.blog.csdn.net/postedit"];
//自定义的request
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url];
//请求过期时间
request.timeoutInterval =20;
//get请求
request.HTTPMethod =@"GET";
//配置用户名密码
NSString * str = [NSString stringWithFormat:@"%@:%@",@"username",@"password"];
//[str base64EncodedString]使用开源Base64.h分类文件加密,这个可以去Github上下载。
NSString * str2 = [NSString stringWithFormat:@"Basic %@",[str base64EncodedString]];
[request setValue:str2 forHTTPHeaderField:@"Authorization"];
[webview loadRequest:request];
self.webView = webview;