Sorry, wenn die Frage ein bisschen einfach ist. Ich bin neu hier und ich versuche derzeit, einige Werte mit einer Website-API zu holen. Ich werde einen Link unten fallen lassen. Hier ist das Problem. Der Code, den ich habe, ist der genaue Code, den die Website zur Verfügung stellt. Ich möchte die "Zitat" -Werte nur aus dem von ihnen gesendeten Ergebnis nehmen. Hier ist der Code:So erhalten Sie einen bestimmten Wert oder Daten mithilfe der API in Java
import java.net.URI;
import java.io.IOException;
import java.lang.InterruptedException;
import javax.websocket.*;
@ClientEndpoint
public class WSClient {
@OnOpen
public void onOpen(Session session) throws java.io.IOException
{
session.getBasicRemote().sendText("{\"ticks\": \"R_100\"}");
}
@OnMessage
public void onMessage(String message)
{
System.out.println("ticks update: " + message);
}
public static void main(String[] args)
throws IOException, DeploymentException, InterruptedException
{
WebSocketContainer container = ContainerProvider.getWebSocketContainer();
URI apiUri = URI.create("wss://ws.binaryws.com/websockets/v3");
Session session = container.connectToServer(WSClient.class, apiUri);
Thread.sleep(3000);
}
}
Und hier ist das Ergebnis auf meiner Konsole in Eclipse:
Zecken Update: { "echo_req": { "Ticks": "R_100"}, "Tick" : {"epoch": "1461413058", "symbol": "R_100", "quote": "37673.45", "id": "810945BC-094B-11E6-B438-8E7300DB46A6"}, "msg_type": "tick" }
Das Ergebnis funktioniert gut, aber ich möchte nur den "Zitat" -Wert nehmen, der ein numerischer Wert ist. Hier
ist der Link zu ihrer API Website/Dev Website: https://developers.binary.com/
Vielen Dank im Voraus :)
Und wo im Code sollte ich das setzen? Wie ich bereits erwähnt habe, bin ich sehr neu, wenn es darum geht, API zu verstehen. Speziell java – user3380047
Sie sollten Ihre Zeile in onMessage damit ersetzen. Sie müssen org.json.JSONObject importieren, damit dies funktioniert. Ersetzen Sie myAPIresponse in meinem Code durch die Nachrichtenvariable, die Sie haben –
Hier ist das Problem. Der Code ist "(JSONObject.getString (" Quote "));" "kann nicht einen statischen Verweis auf die nicht-statische Methode getString (String) von dem Typ JSONObject machen" Das ist der Fehler, den ich jetzt bekomme – user3380047