【发布时间】:2020-09-10 19:39:10
【问题描述】:
当我在本地运行网站时,我的 curl 消息完美地更新了我网站上的 webhook,使用 'localhost:800' 作为 URI,在网页 javascript 代码中使用 'ws://localhost:8080/ws' 和“curl -H“缓存控制:无缓存”-H“内容类型:应用程序/json”-XPOST -d'{“对象”:“事件”,“数据”:{“付费”:true}}'本地主机:8080/webhook”作为发送的 curl 消息。但是,当我在网页上向 Heroku 托管站点发送相同的 curl 消息:'https://XXXX.herokuapp.com/webhook' 和 'ws://XXXX.herokuapp.com/ws' 时,它不会更新为curl 中收到的信息,尽管从 Heroku 日志中我可以看到该消息已收到。有谁知道可能是什么问题?
【问题讨论】:
-
总是不行吗?您是否有多个 heroku dyno 正在运行,允许 webhook 在您的 websocket 连接到另一个 dyno 时以一个 dyno 结束?浏览器控制台日志/网络对 websocket 有什么看法? Heroku 有一个 golang+websocket 演示如何做到这一点。可能值得将他们的 Procfile 与您自己的进行比较:devcenter.heroku.com/articles/go-websockets
-
您能否向我们提供更多信息(日志、应用程序设计、a minimal reproducible example)?
-
我发现它适用于 http 但不适用于 https。我正在使用 Gorilla webhook,所以需要看看是否有使用 ListenAndServeTLS 的示例,而不是我认为的 ListenAndServe。