我在C#中编写了一个Windows服务,它连接到Firebase数据库并存储数据。对于连接和数据库通信,我使用StepUp Labs,Inc。的名为“FirebaseAuthentification.net”和“FirebaseDatabase.net”的NuGet包。
在我的测试系统上,一切正常。在客户的系统上,有防火墙/ procy限制拒绝通信。我们已经打开了443端口并且能够发送请求,但答案没有到达。
旧GCM Doc说:
如果您的组织具有限制进出Internet的流量的防火墙,则需要将其配置为允许与GCM连接,以便GCM客户端应用程序接收邮件。要打开的端口是:5228,5229和5230. GCM通常仅使用5228,但有时使用5229和5230. GCM不提供特定的IP,因此您应该允许防火墙接受到包含的所有IP地址的传出连接在Google的ASN 15169中列出的IP块中。
但消息传递不是数据库认证。我没有在firebase文档或网络中的任何其他地方找到任何内容。
我必须打开哪些端口才能使Connection工作?
Firebase身份验证和Firebase实时数据库都使用HTTPS在客户端和服务器之间进行通信。这意味着所有通信都通过端口443。
数据库通信在可能的情况下使用端口443上的Web套接字。您可能想要检查防火墙是否做了专门阻止Web套接字的操作。