我们通常用SDWebImage来请求网络的图片,但是偶尔会遇到网页需要登录的情况,这时候我们发现直接用setImageWithURL来请求网络图片会请求失败,怎么办呢?
当然我们想的是需要把网页的账号密码加上,但是家在哪儿呢,用哪个方法呢?
研究了半天发现有这么一个方法
[request setValue:authValue forHTTPHeaderField:@"Authorization"]
上面这句大家可以看到一个HTTPHeaderField,这是HTTP头信息,有兴趣的朋友可以去了解一下http://blog.csdn.net/zhenweicao/article/details/7911525。
这里我们继续,这个setValue就是我们需要设置的地方,将账号密码设置到这里才能在请求图片的时候把你的用户名和信息输入请求进去。那这个authValue怎么设置呢?
NSString *authStr = @"username:password";
NSData *authData = [authStr dataUsingEncoding:NSASCIIStringEncoding];
NSString *authValue = [NSString stringWithFormat:@"Basic %@", [authData base64Encoded]];
是的这样我们就能得到authValue。
那么整个过程就是将以下代码设置到SDWebImageDownloaderOperation.m中即可。
NSString *authStr = @"username:password";
NSData *authData = [authStr dataUsingEncoding:NSASCIIStringEncoding];
NSString *authValue = [NSString stringWithFormat:@"Basic %@", [authData base64Encoded]];
[self.request setValue:authValue forHTTPHeaderField:@"Authorization"];
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
当前文章:用SDWebImage请求需要用户名密码登录的网页图片-创新互联
文章转载:https://www.cdcxhl.com/article42/doceec.html
成都网站建设公司_创新互联,为您提供网站设计公司、网站设计、微信公众号、App开发、商城网站、App设计
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联