使用 DDP 协议发送授权请求时连接状态关闭
Connection state is closed when sending authorization request using DDP protocol
我正在使用 kenyee 的 Android DDP Client library 将我的 Android 应用程序连接到服务器 运行 Meteor-JS。
我修改了他的Meteor.js Parties ANdroid Demo。我尝试使用现有用户凭据登录并出现登录错误。请帮忙!
我使用以下设置创建 DDPStateSingleton
:
String meteorServer = "http://<sandbox_name>.nitrousbox.com";
Integer meteorPort = 3000;
mInstance = new MyDDPState(context, meteorServer, meteorPort);
(Meteor-js 服务器是 运行 在 nitrous.io 沙箱中)然后我执行用户登录尝试:
MyDDPState.getInstance().login(mEmail, mPassword);
但是我得到 WebsocketNotConnectedException
(它是从 org.java_websocket.WebSocketImpl#send(String)
抛出的)所以我的登录请求以错误消息结束
"Unknown websocket error (exception in callback?)"
异常期间的单例状态:
mConnState = Closed
mMeteorServerAddress = ws://http://<sandbox_name>.nitrousbox.com:3000/websocket
很奇怪,尽管之前调用了 connectIfNeeded()
,但我看到连接已关闭。
UPD:
从 DDP 服务器收到的第一个异步消息的类型为 error
.
第二个接收到的异步消息是 closed
.
类型
是java.nio.channels.UnresolvedAddressException
。
主机名应在没有协议的情况下指定:
String meteorServer = "<sandbox_name>.nitrousbox.com";
我正在使用 kenyee 的 Android DDP Client library 将我的 Android 应用程序连接到服务器 运行 Meteor-JS。
我修改了他的Meteor.js Parties ANdroid Demo。我尝试使用现有用户凭据登录并出现登录错误。请帮忙!
我使用以下设置创建 DDPStateSingleton
:
String meteorServer = "http://<sandbox_name>.nitrousbox.com";
Integer meteorPort = 3000;
mInstance = new MyDDPState(context, meteorServer, meteorPort);
(Meteor-js 服务器是 运行 在 nitrous.io 沙箱中)然后我执行用户登录尝试:
MyDDPState.getInstance().login(mEmail, mPassword);
但是我得到 WebsocketNotConnectedException
(它是从 org.java_websocket.WebSocketImpl#send(String)
抛出的)所以我的登录请求以错误消息结束
"Unknown websocket error (exception in callback?)"
异常期间的单例状态:
mConnState = Closed
mMeteorServerAddress = ws://http://<sandbox_name>.nitrousbox.com:3000/websocket
很奇怪,尽管之前调用了 connectIfNeeded()
,但我看到连接已关闭。
UPD:
从 DDP 服务器收到的第一个异步消息的类型为 error
.
第二个接收到的异步消息是 closed
.
是java.nio.channels.UnresolvedAddressException
。
主机名应在没有协议的情况下指定:
String meteorServer = "<sandbox_name>.nitrousbox.com";