https callbackUrl 的限制和整个订阅的性质使得这看起来似乎只能通过可公开访问的 url 来完成。
到目前为止,我遇到了两种可能的解决方案,可以使本地开发/调试更容易。
首先是谷歌提供的订阅代理服务。此解决方法实质上允许您删除 SSL 限制和对自定义 URL 的代理订阅回调。
我发现在本地进行开发的第二种也是最有用的方法是将订阅回调请求(例如来自可公开访问的服务器)捕获到日志中,然后使用 curl 在本地/开发机器上使用类似的东西重现该请求:
curl -H "Content-type: application/json" -X POST \
-d '{"json for":"the notification"}' http://localhost:8080/notify
由于请求有时可能很大,或者您可能想要测试多种回调类型,我还发现将下标请求的 JSON 放入各种文件(例如:)timeline-respond.json
然后运行很有用
curl -H "Content-Type: application/json" \
--data @timeline-respond.json http://localhost:8080/notify
我很好奇其他人在本地测试他们的应用程序订阅。