我用 C# 编写了一个 Windows 服务,它连接到 Firebase 数据库并存储数据。对于连接和数据库通信,我使用名为“FirebaseAuthentification.net”和“FirebaseDatabase.net”的 NuGet 包,均由 StepUp Labs, Inc. 提供。
在我的测试系统上,一切正常。在客户的系统上,存在拒绝通信的防火墙/代理限制。我们已经打开了端口 443 并且能够发送请求,但答复没有到达。
老 GCM 文档 说:
如果您的组织有限制进出 Internet 的流量的防火墙,您需要将其配置为允许与 GCM 连接,以便 GCM 客户端应用程序接收消息。要打开的端口为:5228、5229 和 5230。GCM 通常仅使用 5228,但有时会使用 5229 和 5230。GCM 不提供特定 IP,因此您应该允许防火墙接受到包含的所有 IP 地址的传出连接在 Google 的 ASN 15169 中列出的 IP 块中。
但消息传递不是数据库身份验证。我在 firebase 文档或网络中的其他任何地方都没有找到任何内容。
我必须打开哪些端口才能使连接正常工作?
Firebase 身份验证和 Firebase 实时数据库都使用 HTTPS 在客户端和服务器之间进行通信。这意味着所有通信都通过端口 443 进行。
数据库通信尽可能使用端口 443 上的 Web 套接字。您可能想检查防火墙是否执行某些操作来专门阻止 Web 套接字。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)