-
Notifications
You must be signed in to change notification settings - Fork 50
Closed
Description
Hi,
I tried to connect an SSL engine-io server but got failed.
Server Code
The following is my server code, I deploy the servlet in a Jetty Container which is using SSL.
public class SockServlet extends HttpServlet {
private final EngineIoServer mEngineIoServer = new EngineIoServer();
private static final Logger logger = Logger.getLogger(ConnectionListener.class.getName());
@Override
public void init(ServletConfig config) throws ServletException {
super.init(config);
logger.info("Sock Servlet Initialized");
initIO();
}
private void initIO() {
mEngineIoServer.on("connection", new Emitter.Listener() {
@Override
public void call(Object... args) {
EngineIoSocket socket = (EngineIoSocket) args[0];
logger.info("A client connected: " + socket.getId());
socket.send(new Packet<>(Packet.MESSAGE, "Hi client, I am here"));
socket.on("message", new Emitter.Listener() {
@Override
public void call(Object... objects) {
String message = (String) objects[0];
logger.info("received: " + message);
logger.info("received");
}
});
}
});
}
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
mEngineIoServer.handleRequest(req, resp);
}
public EngineIoServer getmEngineIoServer() {
return mEngineIoServer;
}
}maven dependency
<dependency>
<groupId>io.socket</groupId>
<artifactId>engine.io-server</artifactId>
<version>1.3.1</version>
</dependency>Client Code
I created an engine-io client using engine.io-client.
const io = require('engine.io-client');
const opts = {
path: '/rest-api/sock',
rejectUnauthorized: false,
};
const socket = io('https://localhost:8443', opts);
socket.on('open', () => {
console.log('connected');
})
socket.on('message', (data) => {
console.log('received: ', data);
});
socket.on('error', (err) => {
console.log('error', err);
})
console.log('client started');dependency
"engine.io-client": "^3.2.1",Errors
When I executed the client code using node client.js, it showed the first connection has been established, but the connection couldn't keep alive.
client started
connected
received: Hi client, I am here
error { Error: xhr poll error
at XHR.Transport.onError (C:\Projects\history-notification-client\node_modules\engine.io-client\lib\transport.js:67:13)
at Request.<anonymous> (C:\Projects\history-notification-client\node_modules\engine.io-client\lib\transports\polling-xhr.js:130:10)
at Request.Emitter.emit (C:\Projects\history-notification-client\node_modules\component-emitter\index.js:133:20)
at Request.onError (C:\Projects\history-notification-client\node_modules\engine.io-client\lib\transports\polling-xhr.js:311:8)
at Timeout._onTimeout (C:\Projects\history-notification-client\node_modules\engine.io-client\lib\transports\polling-xhr.js:258:18)
at ontimeout (timers.js:498:11)
at tryOnTimeout (timers.js:323:5)
at Timer.listOnTimeout (timers.js:290:5) type: 'TransportError', description: 503 }
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels