如何使用Java中的API获取特定的值或数据

时间:2016-04-23 12:09:57

标签: java api websocket java-websocket

很抱歉,问题有点简单。我是新手,我目前正在尝试使用网站API获取一些值。我将在下面删除一个链接。这是问题所在。我的代码是网站提供的确切代码。我想采取"引用"值仅来自从它们发送的结果。这是代码:

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);
}
}

以下是我在日食中的控制台上的结果:

  

ticks update:{" echo_req":{" ticks":" R_100"}," tick":{"时期":" 1461413058""符号":" R_100""报价":" 37673.45" " ID":" 810945BC-094B-11E6-B438-8E7300DB46A6"}" MSG_TYPE":"蜱"}

结果工作正常,但我想采取"引用"值是一个数值。

以下是其API网站/开发网站的链接:https://developers.binary.com/

提前谢谢你:)

1 个答案:

答案 0 :(得分:0)

您的响应看起来像JSON字符串,您应该这样做

@OnMessage
public void onMessage(String message)
    JSONObject response = new JSONObject(message);
    int quote = Integer.parseInt(response.getString("quote"));
}