【问题标题】:Use web push in appengine在 appengine 中使用网络推送
【发布时间】:2019-04-09 00:51:10
【问题描述】:

我正在尝试在我的 appengine Web 应用程序中使用 HTML5 Web Push。我让前端正常工作,甚至可以使用 ajax 获取订阅数据并将其存储在我的数据库中,然后在发生正确事件时检索它。但是,我无法弄清楚我必须使用什么库来推送它。

标准集pywebpush 中的那个使用了我不能在appengine 上使用的基于c 的加密库。我找不到使用 pycrypto 的单个 web 推送 python 库:solidwebpush 是一样的。

那么,我是否必须编写包含所有加密内容的自己的网络推送库,这是一项相当艰巨的任务?或者是否有一些我缺少的更简单的方法或库。顺便说一句,由于成本原因,灵活的应用引擎并不是一个真正的选择,而且我使用的是 python 2.7

【问题讨论】:

  • stackoverflow.com/questions/49719643/… 这有点重复,但不是真的,因为他的回答只是找到了导入错误的根源,而只是使用 GAE 灵活,这不是大多数项目的选项。

标签: javascript python google-app-engine google-cloud-platform web-push


【解决方案1】:

使用 cryptography 等 C 扩展引入依赖项的选项仅限于:

  • App Engine Flex:有一个 Python 2.7 和 3.6 运行时(由于成本,你已经排除了这个)
  • App Engine Standard w/ Python 3.7:App Engine 的最新 Python 运行时,它支持所有依赖项(由于使用的是 Python 2.7,您已经排除了这一点)
  • Cloud Functions w/ Python 3.7:还支持所有依赖项(由于使用的是 Python 2.7,您已经排除了这一点)

看来您要么需要迁移到 Python 3,要么接受这里的额外成本。

【讨论】:

  • 我的问题不是如何将依赖项与 c 扩展一起使用,而是是否存在使用 pycrypto 或内置而不是 cryptography 进行 Web 推送的方法
猜你喜欢
  • 1970-01-01
  • 2021-12-15
  • 1970-01-01
  • 2019-05-13
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多