336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
이건 혹시, 테스트 서버에 접근 할 때, SSL 인증을 통과 시키고자 하시는 분들에게 도움을 드리고자 공유 합니다.
iOS 출시를 위한 서버로 접근은 이 코드를 적용 시켜서는 안됩니다.
먼저 , .plist에 예외 처리 설정을 추가 합니다.
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
우선, Kingfisher wiki에 SSL 인증과 관련 해서 아래와 같은 내용이 있다.
Modify a request before sending
let modifier = AnyModifier { request in
var r = request
r.setValue("", forHTTPHeaderField: "Access-Token")
return r
}
imageView.kf.setImage(with: url, placeholder: nil, options: [.requestModifier(modifier)])
NSURLCredential
Authentication with // In ViewController
ImageDownloader.default.authenticationChallengeResponder = self
extension ViewController: AuthenticationChallengeResponsable {
func downloader(_ downloader: ImageDownloader,
didReceive challenge: URLAuthenticationChallenge,
completionHandler: (URLSession.AuthChallengeDisposition, URLCredential?) -> Void)
{
// Provide your `AuthChallengeDisposition` and `URLCredential`
let disposition: URLSession.AuthChallengeDisposition = // ..
let credential: URLCredential? = //..
completionHandler(disposition, credential)
}
}
출처 : https://github.com/onevcat/Kingfisher/wiki/Cheat-Sheet
위 내용 중 첫번째는 Access-Token이 있어서 인증을 하는 방식 이다.
만약, SSL 인증을 우회 하는 방식으로 하고자 한다면 아래 형태로 하시면 됩니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | import UIKit import Kingfisher open class SomeViewController: UIViewController, AuthenticationChallengeResponsable { open override func viewDidLoad() { super.viewDidLoad() ImageDownloader.default.authenticationChallengeResponder = self } public func downloader(_ downloader: ImageDownloader, didReceive challenge: URLAuthenticationChallenge, completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void) { let disposition = URLSession.AuthChallengeDisposition.useCredential let credential = URLCredential(trust: challenge.protectionSpace.serverTrust!) completionHandler(disposition, credential) } } | cs |
위와 해주시면 됩니다.
참고하세요.
'나의 플랫폼 > iOS' 카테고리의 다른 글
[iOS] CocoaPod 추가 해보기 (0) | 2017.07.11 |
---|---|
[iOS] UITableView의 footerView 변경 - height, background color (0) | 2017.06.28 |
[iOS] UIWebView 에서 request시 SSL 인증 제외 (0) | 2017.06.26 |
[iOS] 키보드 강제로 내리기 (0) | 2017.06.16 |
[iOS][Alamofire] NSURLSession/NSURLConnection HTTP load failed (2) | 2017.06.15 |