appStore1月1日起,将强制使用https

appStore1月1日起,将强制使用https,包括支付,更新,以及所有的http请求都必须换成https,官网现在有给出更新部分的解决方案吗

现在我有用nodejs搭建了一个https 的服务器,网页测试,可以用https 进行访问!更新使用https 会直接报如下错误:
js层初始化
if (!this.updateManager) {
this.updateManager = new jsb.AssetsManager(fileName, storagePath);
this.updateManager.retain();
}

        if (!this.updateManager.getLocalManifest().isLoaded()) {
            this.runGame("不需要更新");
        } else {
            appLog.log("调用下载");
            this.updateManager.update();
            appLog.log("调用下载完毕");

            this.startDownload();
        }

调用update
下面是日志 ,来自 iphone6s debug 模式下的日志
JS: 开始下载资源文件
2016-12-22 11:25:55.266350 TOK[686:370531] NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9813)
AssetsManagerEx : Fail to download version file, step skipped
2016-12-22 11:25:59.926045 TOK[686:370531] NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9813)
JS: [4777]:更新完毕来源:下载失败:runGame

希望官网大大能够给出一个解决方案。

ios官网 给出消息 暂时不着急了
https://developer.apple.com/news/?id=12212016b18

ps:使用 cc.loader.getXMLHttpRequest(); 是可以正常链接的
url 是 manifest中的 remoteManifestUrl
var xhr = new cc.loader.getXMLHttpRequest();
xhr.open(“GET”, url);

返回的状态 xhr.status 是200

请问你用的是哪个版本的引擎?是在什么平台上进行测试的呢?

引擎是3.8.1 不过之前有升级过网络模块 ,兼容ipv6

3.8.1 太老了,还在使用 curl 版本的 Downloader,的确对于 ipv6 支持有问题,需要升级 Downloader 模块到最新的版本

@panda 了解了。不过curl应该也是支持https的,只是要设置。我看一下怎么设置。

好的,我现在完全找不到头绪去解决这个问题了,downloader这块我比对了3.13 似乎也没什么区别啊。你找到方法留下哈,我再尝试下

这里有curl的文档。我对证书认证这块也不熟悉,感觉不应该是自己生成一个证书,然后就可以用,需要到某个机构去做认证的。

好 我先试试。

最简单的方式应该是通过curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, FALSE);去除SSL验证。

不是downloader区别,@panda 的意思是之前的AssetsManager使用的CURL而不是downloader,后面的版本才改为使用downloader。

确定问题所在了,似乎这个不能访问的原因是,证书被验证无效,我申请了个认证的证书,这里就测试通过了。谢谢!