美文网首页
填坑记(第三方)

填坑记(第三方)

作者: _skye | 来源:发表于2018-05-15 19:00 被阅读13次

1. 使用自签名证书,https请求时,发现SSL 花样报错

swift语言中
1.1 第三方网络请求:Alamofire

1.1.1 自定义EKWSessionManager继承于SessionManager,在Debug模式下添加需要添加信任的host, 如:www.jianshu.com, www.baidu.com

import UIKit
import Alamofire

class EKWSessionManager: SessionManager {
    
    open static let defaultManager: SessionManager = {
        
        #if DEBUG
            let configuration = URLSessionConfiguration.default            
            //设置需要信任的host
            let serverTrustPolicies: [String : ServerTrustPolicy] =  ["www.baidu.com": .disableEvaluation, "www.jianshu.com": .disableEvaluation]
            let sessionManager = SessionManager.init(configuration: configuration, serverTrustPolicyManager: ServerTrustPolicyManager.init(policies: serverTrustPolicies))
        #else
            let sessionManager = SessionManager.default
        #endif
        
        return sessionManager
    }()
}

1.1.2 接下来的网络请求都是基于EKWSessionManager. defaultManager

let sessionManager = EKWSessionManager.defaultManager
let dataRequest = sessionManager.request(url,
                                            method: method,
                                            parameters: paramenters,
                                            encoding: URLEncoding.default,
                                            headers: nil)

1.2 第三方图片加载:Kingfisher

在Debug模式下添加需要添加信任的host, 如:www.jianshu.com, www.baidu.com

class func serverTrustPolicy(){
        #if DEBUG
        let downloader = KingfisherManager.shared.downloader
        downloader.trustedHosts = ["www.jianshu.com", "www.baidu.com"]
        #else
        #endif
    }
OC语言中
1.3 使用OC语言,在Debug模式下添加绕过证书验证的方法
#ifdef DEBUG
@implementation NSURLRequest(DataController)
+ (BOOL)allowsAnyHTTPSCertificateForHost:(NSString *)host
{
    return YES;
}
@end
#endif

2. 使用

相关文章

  • UiAutomator2.0升级填坑记

    UiAutomator2.0升级填坑记

  • 填坑记(第三方)

    1. 使用自签名证书,https请求时,发现SSL 花样报错 swift语言中 1.1 第三方网络请求:Alamo...

  • 填坑记

    后台像前台传值时遇到一个问题: 坑1 使用console.log打印后台传来的json值时只显示[object O...

  • 填坑记

    btng_upload_IDcard id 如果控件不冲突,就是控件所在的layout文件冲突了,多module下...

  • 记安装pyspectator填坑记

    原文链接:一只电工的博客 记安装pyspectator填坑记: Environment INFO: windows...

  • activeMQ 填坑记

    前言 MQ是现在大型系统架构中必不可少的一个重要中间件,之前有偏文章《MQ(消息队列)常见的应用场景解析》介绍过M...

  • 填坑记(UI)

    1. tableView刷新闪屏 场景:类似于聊天界面,快速多次发送消息,刷新界面并且滚动到最后一条问题:scro...

  • 填坑记(逻辑)

    1. 在https页面去请求http的资源 问题:https页面内的资源加载不出来,为空白原因:浏览器有安全设置,...

  • webdriverAgent填坑记

    未能载入软件包“WebDriverAgentRunner”,因为它已损坏或丢失必要的资源。 请尝试重新安装软件包。...

  • iView 填坑记

    新的项目UI框架打算用iView,于是还没开工的日子就写一下Demo,于是就遇到坑了 1. icon 打包到生产环...

网友评论

      本文标题:填坑记(第三方)

      本文链接:https://www.haomeiwen.com/subject/drwwrftx.html