subscribe方法是否在客户端和推送服务之间建立了任何类型的连接?或者是将消息发送到存储在端点URL中的正确客户端所需的所有必要信息,以便不需要连接?
如果没有连接,如果客户端移动(更改IP地址),推送服务如何知道更新IP地址?
答案 0 :(得分:1)
当您致电subscribe
时,浏览器会连接到推送服务(例如GCM或Mozilla push service)并请求新的端点。
然后解析了 promise ,您可以将带有AJAX的端点发送到您自己的应用服务器(或Pushpad之类的服务)。您的服务器可以使用该端点发送通知(它就像电子邮件地址)。
最后,每次用户打开浏览器时,它都会连接到GCM,它会通过显示其端点(或者可能是与之关联的秘密)进行身份验证,并读取任何新通知。
有关详情:https://www.w3.org/TR/push-api/#sequence-diagram
如果没有连接,如果客户端移动(更改IP地址),推送服务如何知道更新IP地址?
必须有连接,否则无法发送通知。如果IP发生变化,这不是问题:它是连接到推送服务的客户端,反之亦然。
披露:我是Pushpad的创始人