Public Feed java

Added by Lars over 4 years ago

Hej!

Försöker få public feeds från java att fungera i test miljön men får inte det att fungera. Svaren efter att skickat subscribe för en feed är enbart null. Följande kod använder jag

      SSLSocketFactory sslsocketfactory = (SSLSocketFactory) SSLSocketFactory.getDefault();
        BufferedReader in = null;
        BufferedWriter out = null;

        try {
        SSLSocket sslsocket = (SSLSocket) sslsocketfactory.createSocket(publicFeedHostName, publicFeedPort);

        in = new BufferedReader( new InputStreamReader(sslsocket.getInputStream()));
            out = new BufferedWriter( new OutputStreamWriter(sslsocket.getOutputStream()));
            String loginCmd = "{\"cmd\":\"login\", \"args\":{ \"session_key\":\"" + sessionKey + "\"}}";
            String subscribe = "{\"cmd\":\"subscribe\", \"args\":{\"t\":\"price\",\"i\":\"101\",\"m\":11}}\n";

            out.write(loginCmd);
            out.flush();

            out.write(subscribe);
            out.flush();

            while (true) {
                try {
                    String line = in.readLine();
                    System.out.print(line);
                    if (line == null) break;                    
                } catch ( IOException e ) {
                    e.printStackTrace();
                }
            }

Har jag missat något?

/Lars


Replies (2)

RE: Public Feed java - Added by Björn over 4 years ago

Vet inte på rak arm hur readLine beter sig på en socket, kan det vara så att den faktiskt returnerar null om det inte finns någon data vid anropstillfället?

Du skickar ingen newline efter login utan bara efter subscribe, om jag inte ser helt fel. Jag har aldrig medvetet gjort på det sättet så jag vet inte, men det skulle kunna vara ett problem. Prova med newline efter varje kommando.

RE: Public Feed java - Added by Lars over 4 years ago

Hej!

Japp det löste problem med newline efter subscribe kommandot.

/L

(1-2/2)