현재 Selenium 기반 자동화 프레임 워크를 사용하여 테스트 자동화를 수행하고 있습니다. 현재 API 제품군을 생성하기 위해 HTTP 요청을 보내고 있습니다.HTTP 이벤트 스트림에서 데이터 추출 Java
그러나 게시해야하는 다음 URL은 텍스트/이벤트 스트림의 일부입니다. 추출해야하는 데이터는 eventStream 자체 내에 있습니다.
a["{\"jsonrpc\":\"2.0\",\"id\":1,\"result\":{\"VirgoSessionToken\":\"8C7A0FAA-EA27-473A-BCC3-E568ABDBD403\",\"Localization\":{\"LocaleString\":\"en_UK\",\"LanguageTag\":\"en-UK\",\"DecimalSeparator\":\".\",\"ZeroDigit\":\"0\",\"ThousandsSeparator\":\",\",\"CurrencySymbolLocation\":\"PREFIX\"},\"Balance\":{\"Timestamp\":1493730819967,\"Banks\":{\"CREDIT\":{\"Amount\":83872,\"CurrencyCode\":\"GBP\",\"MinorCurrencyUnits\":2,\"CurrencySymbol\":\"GBP\"},\"WINNINGS\":{\"Amount\":0,\"CurrencyCode\":\"GBP\",\"MinorCurrencyUnits\":2,\"CurrencySymbol\":\"GBP\"}}},\"Preferences\":{\"Global\":{},\"Game\":{}},\"State\":{\"value\":\"{\\\"serverState\\\":{\\\"player\\\":{\\\"uniqueVirgoId\\\":\\\"f85551d0-2f36-11e7-9136-314c3f96f318\\\",\\\"playerBindingState\\\":{\\\"20\\\":0,\\\"40\\\":0,\\\"60\\\":0,\\\"80\\\":0,\\\"100\\\":0,\\\"200\\\":0,\\\"400\\\":0,\\\"600\\\":0,\\\"800\\\":0,\\\"1000\\\":0,\\\"2000\\\":0,\\\"4000\\\":0,\\\"6000\\\":0,\\\"8000\\\":0,\\\"10000\\\":0},\\\"populated\\\":true},\\\"game\\\":{\\\"currencyCode\\\":\\\"\\\"}},\\\"jackpotState\\\":{}}\"},\"ApiPhase\":\"Idle\"}}"]
Java를 사용하여 Amount 값을 추출해야합니다. 코드 서식이 좋지 않을 경우 사과드립니다.
EventStreams에서 데이터를 추출하는 가장 좋은 방법이 있습니까? 내 프레임 워크가 무엇의 예로서
:
String webSocketUrl = insHostedUrl + responseTitle + "/xc_yx4r_" + "/eventsource";
assertTrue(httpCreateRequest("post", webSocketUrl);
assertTrue(httpSendRequest());
response = httpGetResponse();
요청에 표시되는 URL에있는이 게시물. 그러나 이것은 eventStream 데이터를 가져 오지 않습니다.
또 다른 기사입니다? – freedev
실제 데이터 코드가 질문에 나열되어 있습니다. 프로젝트의 코드 자체는 내부 자동화 프레임 워크로 게시되지 않습니다. 프레임 워크가 그렇게 멀리 가지 않기 때문에, 이것을 추출 할 수있는 일반적인 Java 메소드가 있는지 그냥 게시했습니다. – mvoase
내가 보는 것은 큰 Json 문자열 (내부에 중첩 된 Json 문자열이 있음)입니다. – freedev