任何人都可以给我一个例子,我们正在创建一个特殊的函数,它也有一个回调函数?
function login(username, password, function(err,result){
});
Run Code Online (Sandbox Code Playgroud)
我应该在哪里放置登录功能和回调函数的代码?
ps:我是nodejs的新手
我一直在使用Glassfish 4作为我的服务器.我正在使用以下语句打开WebSocket连接:
webSocket = new WebSocket(link);
Run Code Online (Sandbox Code Playgroud)
哪里:
link = 'ws://localhost:8080/CollabEdit/Document/file333B1CDF85-DDDC-E411-8299-F82FA8BE8622';
Run Code Online (Sandbox Code Playgroud)
并在服务器文件中:
@ServerEndpoint(value="/file333B1CDF85-DDDC-E411-8299-F82FA8BE8622", encoders = {MessageEncoder.class}, decoders = {MessageDecoder.class})
Run Code Online (Sandbox Code Playgroud)
实际上,我一直在使用URL映射,这个" file333B1CDF85-DDDC-E411-8299-F82FA8BE8622 "实际上是针对用户的,但是在后端,控件位于" main.jsp "文件中.在执行期间,生成的错误是:
WebSocket connection to 'ws://localhost:8080/CollabEdit/Document/file333B1CDF85-DDDC-E411-8299-F82FA8BE8622' failed: Error during WebSocket handshake: Unexpected response code: 200
Run Code Online (Sandbox Code Playgroud)
GlassFish服务器中的异常StackTrace:
SEVERE: WebModule[/CollabEdit]Exception starting filter WebSocket filter
java.lang.InstantiationException
at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:135)
at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:5297)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:5909)
at com.sun.enterprise.web.WebModule.start(WebModule.java:691)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:1041)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:1024)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:747)
at com.sun.enterprise.web.WebContainer.loadWebModule(WebContainer.java:2278)
at com.sun.enterprise.web.WebContainer.loadWebModule(WebContainer.java:1924)
at com.sun.enterprise.web.WebApplication.start(WebApplication.java:139)
at org.glassfish.internal.data.EngineRef.start(EngineRef.java:122)
at org.glassfish.internal.data.ModuleInfo.start(ModuleInfo.java:291)
at org.glassfish.internal.data.ApplicationInfo.start(ApplicationInfo.java:352)
at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:497)
at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:219)
at org.glassfish.deployment.admin.DeployCommand.execute(DeployCommand.java:491)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:527) …Run Code Online (Sandbox Code Playgroud) 我一直在使用GlassFish服务器,其中,index.html将控件发送到servlet文件,该文件将控件发送到另一个正在处理WebSockets的nextStep.html文件.现在,我很困惑,因为我收到一个错误:
与"LocalHost-link"的WebSocket连接失败:连接建立错误:net :: ERR_CONNECTION_REFUSED
我认为这个问题与端口号有关.我们可以在同一个端口上同时使用WebSockets和HTTP服务器,如果是,那么如何?如果我们必须使用不同的端口,那么如何在Java中执行此任务?
http ×2
java ×2
websocket ×2
asynchronous ×1
callback ×1
glassfish ×1
glassfish-4 ×1
java-ee ×1
node.js ×1