当微信小程序遇上TensorFlow:Server端实现补充

image

在前面一篇文章《当微信小程序遇上TensorFlow:Server端实现》中,我们探讨了微信小程序server端的实现。今天在调试微信小程序时才发现一个问题,那就是:微信小程序要求HTTP请求走更加安全的HTTPS协议

修改Simple TensorFlow Serving

为此我研究了Simple TensorFlow Serving: https://github.com/tobegit3hub/simple_tensorflow_serving 的源码,发现其WEB框架采用了flask。flask要增加https支持相当容易,因此我增加了三个参数:

parser.add_argument(
    "--enable_ssl", default=False, help="If enable RESTfull API over https")
parser.add_argument(
    "--secret_pem", default="secret.pem", help="pem file")
parser.add_argument(
    "--secret_key", default="secret.key", help="key file")

第一个参数指定是否启用HTTPS协议,后面两个参数为证书文件名。这个修改我已经向原作者提了一个PR,等待合并。在合并之前,你可以访问 https://github.com/mogoweb/simple_tensorflow_serving 获取最新代码。

证书申请

上阿里云可以申请一个免费的证书,虽然有效期只有一年,但对于我来说足够用。需要注意的是,阿里云上申请证书很隐蔽,我也是尝试了好几个组合,那个免费证书的选项才出现。因为我的主机就是托管在阿里云上,域名也是使用阿里云的DNS服务,所以申请完后,很快就审核通过,然后就可以下载证书。证书下载时我选择证书for Nginx,下载下来就是两个文件:一个pem文件,一个key文件。

image

测试客户端

测试客户端倒不需要怎么修改,只需要将URL的 http:// 修改为 https:// 即可。为此,我也增加了一个参数enable_ssl:

  if enable_ssl :
    endpoint = "https://ilego.club:8500"
  else:
    endpoint = "http://ilego.club:8500"

完整代码请参考: https://github.com/mogoweb/aiexamples/blob/master/AIDog/serving/test_client.py

小结

真正在做项目时,总会碰到意想不到的问题,这远不是照着书本敲几个demo可以获得的经验。在开始做这个微信小程序时,觉得很简单,但做着做着,发现一路碰到的问题还不少。这也是我经常建议新手自己动手做点小项目的原因,即使这个小项目并没有什么产品价值,即使是在现有的代码上修改,但这个过程中积累的经验对于个人来说,还是很宝贵的。

image

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

云水木石

但行好事,莫问前程

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值