您当前的位置: 首页 >  http

蓝不蓝编程

暂无认证

  • 3浏览

    0关注

    706博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

ktor配置https证书

蓝不蓝编程 发布时间:2019-05-22 20:02:31 ,浏览量:3

配置步骤
  1. application.conf中配置https端口和证书相关信息
ktor {
  deployment {
    port = 8080
    sslPort = 8443
    watch = ["xxxServer"]
  }
  application {
    modules = [com.cxyzy.xxx.ApplicationKt.module]
  }
  security {
    ssl {
      keyStore = build/temporary.jks
      keyAlias = mykey
      keyStorePassword = changeit
      privateKeyPassword = changeit
    }
  }
}
  1. 生成证书 可以手工生成证书或找CA证书厂家申请(商用时推荐采用,PS:阿里云上可以申请免费DV SSL证书). 本例图省事,直接在代码中生成证书(生成证书可以用keytool等命令,也可以用我写的kotlin工程).
  1. build.gradle的dependencies中增加:
compile "io.ktor:ktor-network-tls:$ktor_version"
  1. 启动函数中增加生成证书:
fun main(args: Array) {
    // generate SSL certificate
    val file = File("build/temporary.jks")
    if (!file.exists()) {
        file.parentFile.mkdirs()
        generateCertificate(file)
    }
    io.ktor.server.netty.EngineMain.main(args)
}
  1. 测试 如果采用postman,则需要关闭postman的证书校验开关: 在Preferences菜单的General页签中关闭“SSL certificate verification”
附加信息

正常情况下,应该禁用http,仅启用https.但是发现ktor的单元测试时,只能通过http,所以单元测试时需要允许http.

参考资料

https://ktor.io/quickstart/guides/ssl.html https://ktor.io/servers/self-signed-certificate.html#artifact-75

安卓开发技术分享: https://blog.csdn.net/yinxing2008/article/details/84555061 点击关注专栏,查看最新技术分享 更多技术总结好文,请关注:「程序园中猿」

关注
打赏
1639405877
查看更多评论
立即登录/注册

微信扫码登录

0.0406s