2016-06-09 3 views
1

Ich habe eine Klasse geschrieben, um die HAR-Daten aus dem Firefox-Browser zu bekommen.erhalten Har-Daten in JSON und String-Format

Ich möchte die HAR-Daten im JSON-Format richtig angezeigt werden.

Mein Code:

ProxyServer server = new ProxyServer(4444); 
    server.start(); 

    //captures the moouse movements and navigations 
    server.setCaptureHeaders(true); 
    server.setCaptureContent(true); 

    // get the Selenium proxy object 
    Proxy proxy = server.seleniumProxy(); 

    // configure it as a desired capability 
    DesiredCapabilities capabilities = new DesiredCapabilities(); 
    capabilities.setCapability(CapabilityType.PROXY, proxy); 

    // start the browser up 
    WebDriver driver = new FirefoxDriver(capabilities); 

    // create a new HAR with the label "apple.com" 
    server.newHar("yahoo.com"); 

    // open yahoo.com 
    driver.get("http://yahoo.com"); 

    // get the HAR data 
    net.lightbody.bmp.core.har.Har har = server.getHar(); 

jemand May mir helfen, mit immer zu den HAR Daten im JSON-Format und in String!

Antwort

1

Entschuldigung für die späte Antwort.

Ich hoffe, es kann jemand anderen hier helfen.

Sie können einen StringWriter verwenden, um das Har in String zu schreiben. So können Sie das Har als String erhalten. Und Sie können diese Zeichenfolge mit Gson analysieren, um das JSON-Objekt zu erhalten.

net.lightbody.bmp.core.har.Har har = server.getHar(); 

java.io.StringWriter writer = new java.io.StringWriter(); 
try { 
      har.writeTo(writer); 
     } catch (IOException e) { 
      e.printStackTrace(); 
     } 

String harAsString = writer.toString(); 

com.google.gson.JsonElement harAsJson = new com.google.gson.Gson().toJsonTree(writer.toString());