1. 生成.pem文件
openssl s_client -showcerts -connect your.domain:443 -servername your.domain:443 </dev/null | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > cert.pem
2. 生成.cer文件
openssl x509 -inform PEM -in cert.pem -outform DER -out cert.cer
3. 在www目录下创建certificates目录,并将上步生成的cert.cer文件拷贝到目录中。(或者是放到其它目录下,通过ionic_copy拷贝到www目录下)
4. 安装cordova-plugin-advanced-http插件
4. 在app.component.ts中调用
this.http.enableSSLPinning(true);
注意:
设置ssl-pinning后访问http地址会报错,可以自行通过环境变量等判断是否需要设置。
参考文章:
http://uncaughterror.com/programming/ionic3/how-to-integrate-ssl-in-ionic-3-using-cordova-plugin/