我尝试使用staticAuthProvider,如图所示here 在服务器端它告诉我 2015-01-14 10:57:21,353 WARN - SystemPlugIn:尝试使用无效凭据登录,用户名为“root”。
但如果我从网页上发送任何数据,它会成功地在websocket上运行。我是否必须自己拒绝连接?如何确定凭据是否有效? 我可以用
webSocketServerEvent.getConnector().getUsername()
获取用户名,但问题是在开始时用户名是“匿名的”,一段时间后它是“root”(如果凭据是正确的)。
我在processPacket方法中试过这个:
if (!webSocketServerEvent.getConnector().getUsername().equals("root")) {
webSocketServerEvent.getConnector().stopConnector(CloseReason.SERVER_REJECT_CONNECTION);
}
但由于用户名在开头是匿名的,因此失败。 因此,每次连接尝试都被拒绝
答案 0 :(得分:0)
您是否尝试在jWebSocket Forum?上发布此内容 我相信有人会回答你,我会尝试,但不确定我是否得到了你想要的东西:
您未进行身份验证并不意味着您没有服务器端的权限来执行操作,例如,您将始终可以访问SystemPlugIn。现在,如果您希望匿名用户没有权限,请继续编辑jWebSocket.xml文件并设置没有任何权限的匿名用户,不确定是否有帮助,但请尝试告诉我们。 谢谢, 维克多