websocket - Android,Firebase登录时间有点长,出现WebSocketException

标签 websocket firebase firebase-authentication

我正在使用 authWithCustomToken 方法通过 Firebase 登录。登录大约需要 5 秒或更长时间。我启用了 Firebase 日志 (setLogLevel(Logger.Level.DEBUG)) 来监控是否存在任何问题。日志在这里(我稍微修剪了一下,如果需要的话我可以给出它的链接):

PS:android firebase客户端版本是2.5.0

ws_0 - websocket opened
conn_0 - Got control message: {t=r, d=s-softlayer.firebaseio.com}
conn_0 - Got a reset; killing connection to tbf.firebaseio.com; Updating internalHost to s-softlayer.firebaseio.com
conn_0 - closing realtime connection
handleIncomingFrame complete frame: {d={t=r, d=s-softlayer.firebaseio.com}, t=c}
ws_0 - websocket is being closed
ws_0 - had an error
    com.firebase.tubesock.WebSocketException: IO Error
        at com.firebase.tubesock.WebSocketReceiver.run(WebSocketReceiver.java:78)
        at com.firebase.tubesock.WebSocket.runReader(WebSocket.java:372)
        at com.firebase.tubesock.WebSocket.access$000(WebSocket.java:30)
        at com.firebase.tubesock.WebSocket$2.run(WebSocket.java:108)
        at java.lang.Thread.run(Thread.java:818)
    Caused by: java.io.EOFException
        at libcore.io.Streams.readFully(Streams.java:83)
        at java.io.DataInputStream.readFully(DataInputStream.java:99)
        at com.firebase.tubesock.WebSocketReceiver.read(WebSocketReceiver.java:141)
        at com.firebase.tubesock.WebSocketReceiver.run(WebSocketReceiver.java:34)
        at com.firebase.tubesock.WebSocket.runReader(WebSocket.java:372) 
        at com.firebase.tubesock.WebSocket.access$000(WebSocket.java:30) 
        at com.firebase.tubesock.WebSocket$2.run(WebSocket.java:108) 
        at java.lang.Thread.run(Thread.java:818) 

ws_0 - |IO Error|
ws_0 - closed

conn_1 - Opening a connection
ws_1 - websocket opened
ws_1 - handleIncomingFrame complete frame: {d={t=r, d=s-dal5-nss-19.firebaseio.com}, t=c}
conn_1 - Got control message: {t=r, d=s-dal5-nss-19.firebaseio.com}
conn_1 - Got a reset; killing connection to s-softlayer.firebaseio.com; Updating internalHost to s-dal5-nss-19.firebaseio.com
conn_1 - closing realtime connection
ws_1 - websocket is being closed
ws_1 - had an error
    com.firebase.tubesock.WebSocketException: IO Error
        at com.firebase.tubesock.WebSocketReceiver.run(WebSocketReceiver.java:78)
        ...
    Caused by: java.io.EOFException
        at libcore.io.Streams.readFully(Streams.java:83)
        ...

ws_1 - |IO Error|
ws_1 - closed
conn_2 - Opening a connection
ws_1 - had an error
    com.firebase.tubesock.WebSocketException: IO Exception
    ...
ws_1 - |IO Exception|
ws_2 - websocket opened
conn_2 - Got control message: {t=h, d={ts=1452086065546, v=5, h=s-dal5-nss-19.firebaseio.com, s=EaQhQ7iRAjeWVxvzBJEFD7k4TKFsmrms}}
conn_2 - realtime connection established

此日志是否表明存在错误?

我应该忽略它吗?如果是,为什么登录时间太长?

最佳答案

输出中没有信息可以确定任何时间影响。但据我所知,流程看起来很正常。您的前两个连接正在被重定向。然后,第三个连接到达正确的服务器,该服务器响应“已建立实时连接”。

关于websocket - Android,Firebase登录时间有点长,出现WebSocketException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34634483/

相关文章:

javascript - 在 Android 上使用 Cordova Websockets 发送 cookie

javascript - io.sockets.clients() 给出错误 "Converting circular structure to JSON"

java - 通过 IP 为 Google AdSense 启用测试广告

ios - Swift + Firebase 模拟登录报错

java - 如何让 Firebase 电话身份验证适用于我的应用程序?

node.js - 如何扩展 Node.js WebSocket Redis 服务器?

asp.net - 使用 Microsoft.WebSockets NuGet 包的 asp.net 4.5 示例

android - 使用 firebase 获取一些空值,其他值正常

当应用程序从多任务托盘停止时,Android 应用程序未收到 Firebase 通知

javascript - React js Firebase 身份验证无法正常工作