https请求 CFNetwork SSLHandshake failed (-9807) A connection failure occurred: SSL problem

本文讨论了在使用ASIHttpRequest进行HTTPS网络请求时遇到的SSL握手失败问题,原因在于证书为自签名。文章提供了解决方案,包括设置验证方式和关闭自签名证书验证,以确保请求成功。

利用ASIHttpRequest,通过https进行网络请求,返回CFNetwork SSLHandshake failed (-9807)错误


或者报一下错误


A connection failure occurred: SSL problem (Possible causes may include a bad/expired/self-signed certificate, clock set to wrong date)

因为我们的证书是自签名,而苹果已经明确提示,你的证书可能是自签名,所以导致失败。

则个时候如果访问其他HTTPS网站则不会报错,所以这个验证只有在正式的证书才有效果。这个也很合理,如果你的客户端自签名都能通过,这样没有安全可言。除非你让用户自己选择是否信任。



解决办法:添加一下两句代码

 [request     setAuthenticationScheme:@"https"];//设置验证方式


 [request setValidatesSecureCertificate:NO];//设置自签名证书验证




11-09 10:54:51.295 285 5591 I C02b23/HiStreamer: (CheckBufferingOneSeconds(), 1390): HTTP CheckBufferingOneSeconds in 11-09 10:54:51.334 285 5593 I C02b23/HiStreamer: (HandleWaterline(), 318): HTTP Buffer is enough, bufferSize:16400 waterLineAbove: 16384 avgDownloadSpeed: 5623.173413 11-09 10:54:51.334 285 5593 I C02b23/HiStreamer: (HandleWaterline(), 319): initCacheSize_: -1 11-09 10:54:51.334 285 5593 I C02b23/HiStreamer: (HandleWaterline(), 331): HandleBuffering bufferingEndCond NotifyAll. 11-09 10:54:51.335 285 5591 I C02b23/HiStreamer: (CheckBufferingOneSeconds(), 1405): HTTP CheckBufferingOneSeconds out 11-09 10:54:51.346 285 5591 I C02b23/HiStreamer: (CheckBufferingOneSeconds(), 1390): HTTP CheckBufferingOneSeconds in 11-09 10:54:51.347 285 5593 I C02b23/HiStreamer: (HandleWaterline(), 318): HTTP Buffer is enough, bufferSize:9408 waterLineAbove: 44 avgDownloadSpeed: 5623.173413 11-09 10:54:51.347 285 5593 I C02b23/HiStreamer: (HandleWaterline(), 319): initCacheSize_: -1 11-09 10:54:51.347 285 5593 I C02b23/HiStreamer: (HandleWaterline(), 331): HandleBuffering bufferingEndCond NotifyAll. 11-09 10:54:51.349 3986 1 E C04501/chromium: [interface_endpoint_client.cc:865] InitControllerIfNecessary returned 11-09 10:54:51.350 285 5593 I C02b23/HiStreamer: (HandleRetOK(), 735): http transfer reach end, startPos_ 34589 11-09 10:54:51.350 3986 1 E C04501/chromium: [interface_endpoint_client.cc:865] InitControllerIfNecessary returned 11-09 10:54:51.351 285 5593 I C02b24/TaskInner: [Task]:OS_httpDownloader PauseAsync done in self task 11-09 10:54:51.351 285 5593 I C02b23/HiStreamer: (operator()(), 186): HTTP Download done, data usage: 276712 bits in 15483ms 11-09 10:54:51.351 285 5593 I C02b23/HiStreamer: (RequestData(), 690): 0x2F6F68 RequestData end. 11-09 10:54:51.351 285 5593 I C02b23/HiStreamer: (NotifyLoopPause(), 1122): Downloader not NotifyLoopPause loopStatus 0 isInterruptNeeded 0 11-09 10:54:51.353 3433 3919 E C04500/chromium: [interface_endpoint_client.cc:865] InitControllerIfNecessary returned 11-09 10:54:51.353 3433 3433 E A0001a/MoblieVehicle: WebComponent --> onConsole : error 11-09 10:54:51.354 3433 3433 I A01194/ARKWEB-CONSOLE: [CONSOLE:38] "error", source: webpack://car_navigation/./src/main.js? (38) 11-09 10:54:51.354 3433 3433 E A0001a/MoblieVehicle: WebComponent --> onConsole : Uncaught ReferenceError: SFMap is not defined 11-09 10:54:51.354 3433 3433 I A01194/ARKWEB-CONSOLE: [CONSOLE:964] "Uncaught ReferenceError: SFMap is not defined", source: webpack://car_navigation/./src/views/newMap.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D (964) 11-09 10:54:51.354 3433 3433 E C04500/chromium: [interface_endpoint_client.cc:865] InitControllerIfNecessary returned 11-09 10:54:51.356 285 5591 I C02b23/HiStreamer: (CheckBufferingOneSeconds(), 1405): HTTP CheckBufferingOneSeconds out 11-09 10:54:51.356 285 5591 I C02b22/StreamDemuxer: (PullDataWithCache(), 170): PullDataWithCache, offset: 44, cache offset: 0, cache size: 16428 11-09 10:54:51.357 285 5591 E C02b22/DemuxerPluginManager: (MediaTypeFound(), 677): MediaTypeFound init plugin error. 11-09 10:54:51.357 285 5591 E C02b22/DemuxerPluginManager: (LoadDemuxerPlugin(), 290): Set data source failed due to create video demuxer plugin failed. 11-09 10:54:51.357 285 5591 E C02b22/DemuxerPluginManager: (LoadCurrentAllPlugin(), 310): LoadDemuxerPlugin video plugin failed. 11-09 10:54:51.357 285 5591 E C02b3a/MediaDemuxer: (InnerPrepare(), 758): Parse meta failed, ret: -7 11-09 10:54:51.357 285 5591 I C02b23/HiStreamer: (NotifyInitSuccess(), 1646): HTTP NotifyInitSuccess in 11-09 10:54:51.357 285 5591 E C02b3a/MediaDemuxer: (ProcessDrmInfos(), 599): Demuxer plugin is nullptr 11-09 10:54:51.357 285 5591 I C02b3a/MediaDemuxer: (SetDataSource(), 815): Out 11-09 10:54:51.357 285 5591 E C02b3a/MediaDemuxer: (SetCacheLimit(), 2817): Demuxer plugin is nullptr 11-09 10:54:51.357 285 5591 I C02b22/HiPlayer: (DoSetSource(), 2455): SetDataSource cost ms 17242 11-09 10:54:51.357 285 5591 E C02b22/HiPlayer: (CollectionErrorInfo(), 653): Error: PrepareAsync error: DoSetSource error 11-09 10:54:51.357 285 5591 I C02b22/HiPlayer: (UpdateStateNoLock(), 2703): sending newest state change: state error 11-09 10:54:51.357 285 5591 E C02b2b/PlayerServer: #454 Server Prepare Failed! 11-09 10:54:51.357 285 5592 I C02b2b/HiPlayerCallbackLooper: (DoReportInfo(), 279): Report info, info type: 5 info value: 0 11-09 10:54:51.357 285 5592 I C02b2b/PlayerServer: #1852 instance: 0x2F3020 change state to inited_state 11-09 10:54:51.357 285 5592 I C02b2b/PlayerServerTaskMgr: #212 0x2F31A0 task[preparing->prepared done] end 11-09 10:54:51.357 285 5592 I C02b2b/PlayerServerState: #152 0x770BE8 Callback State change, currentState is PLAYER_STATE_ERROR 11-09 10:54:51.358 3433 3871 I C02b2b/AVPlayerCallback: #863 0x6B9CF8 Instance OnStateChanged is called, current state: 0 11-09 10:54:51.358 3433 3871 I C02b2b/AVPlayerNapi: #3249 0x889430 notify error 11-09 10:54:51.358 3433 3871 I C02b2b/PlayerListenerStub: #97 DisableMonitor, type = 5, extra = 0. 11-09 10:54:51.358 285 5592 E C02b2b/HiPlayerCallbackLooper: (DoReportError(), 252): Report error, error type: 0 error value: 331350544 11-09 10:54:51.358 285 5592 E C02b2b/PlayerListenerProxy: #91 player callback onError, errorCode: 331350544, errorMsg: unsupport interface 11-09 10:54:51.358 3433 3433 I A0001a/MoblieVehicle: ttsOnline --> 状态机 》》 11130000121302202510021023465999319 , error 11-09 10:54:51.359 3433 3433 E A0001a/MoblieVehicle: tts_avplayer --> avPlayer status : error, used = 17245ms 11-09 10:54:51.359 285 309 I C02b2b/PlayerServiceStub: #250 0x44D680 Stub: OnRemoteRequest task: GetApiVersion is received 11-09 10:54:51.359 3433 3871 I C02b2b/PlayerImpl: #580 PlayerImplCallback apiVersion 18 11-09 10:54:51.359 3433 3871 I C02b2b/AVPlayerCallback: #863 0x6B9CF8 Instance OnStateChanged is called, current state: 0 11-09 10:54:51.359 3433 3871 E C02b2b/AVPlayerCallback: #785 OnErrorCb:errorCode 5400106, errorMsg Unsupported Format: unsupport interface 11-09 10:54:51.360 3433 3433 E A0001a/MoblieVehicle: AudioPlayer --> player on error : {"code":5400106,"name":"BusinessError"} 11-09 10:54:51.360 3433 3433 I A0001a/MoblieVehicle: tts_avplayer --> 播放错误{"code":5400106,"name":"BusinessError"} , 重新 reset}分析报错
最新发布
11-04
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值