2012-07-30 2 views
0

Java에서 HarLib을 잘 알고있는 사람이 있습니까? .HAR 파일에서 "응답"데이터를 가져 와서 화면에 출력하려고합니다.Java의 HarLib을 사용하여 응답 데이터 받기

그러나 내가 메인 페이지의 예에 따라이를 구현하는 방법을 잘 모르겠어요의 HarEntry 클래스의 getResponse() 방법이있다 :

import edu.umass.cs.benchlab.har.*; 

File f = new File(fileName); 
HarFileReader r = new HarFileReader(); 
HarFileWriter w = new HarFileWriter(); 
try 
{ 
    System.out.println("Reading " + fileName); 
    HarLog log = r.readHarFile(f); 

    // Access all elements as objects 
    HarBrowser browser = log.getBrowser(); 
    HarEntries entries = log.getEntries(); 
    List<HarPage> pages = log.getPages().getPages(); 
    for (HarPage page : pages) 
    { 
    System.out.println("page start time: " 
     + ISO8601DateFormatter.format(page.getStartedDateTime())); 
    System.out.println("page id: " + page.getId()); 
    System.out.println("page title: "+page.getTitle()); 
    } 

      // Once you are done manipulating the objects, write back to a file 
    System.out.println("Writing " + fileName + ".test"); 
    File f2 = new File(fileName + ".test"); 
    w.writeHarFile(log, f2); 
} 
catch (JsonParseException e) 
{ 
    e.printStackTrace(); 
    fail("Parsing error during test"); 
} 
catch (IOException e) 
{ 
    e.printStackTrace(); 
    fail("IO exception during test"); 
} 
+1

내가 대답을 발견합니다. 샘플에 몇 줄을 추가했습니다. 목록 hentry = entries.getEntries(); // 루프에 사용 // 항목의 "응답"코드를 출력합니다. for (HarEntry entry : hentry) { System.out.println ("응답 코드 :"+ entry.getResponse(). getStatus()); } 타이머가 만료되는 즉시 전체 코드를 게시합니다. –

답변

0

I : 웹 사이트에서

샘플 내가이 코드가 얼마나 "깨끗한 지"는 모르지만 나는 무언가를 알아 낸 것 같아요. 나는 샘플 코드를 수정하고 일부 파일에 쓰기 주석 :

import java.io.File; 
import java.io.IOException; 
import java.util.List; 

import org.codehaus.jackson.JsonParseException; 

import edu.umass.cs.benchlab.har.*; 
import edu.umass.cs.benchlab.har.tools.*; 


public class readinghars { 


public static void main(String[] args) { 
    String filename = new String("filename.har"); 
    File f = new File(filename); 
    HarFileReader r = new HarFileReader(); 
    HarFileWriter w = new HarFileWriter(); 

    try 
    { 
     System.out.println("Reading " + filename); 
     HarLog log = r.readHarFile(f); 

     // Access all elements as objects 
     HarBrowser browser = log.getBrowser(); 
     HarEntries entries = log.getEntries(); 

    // Used for loops 
     List<HarPage> pages = log.getPages().getPages(); 
     List<HarEntry> hentry = entries.getEntries(); 

     for (HarPage page : pages) 
     { 
     System.out.println("page start time: " 
      + ISO8601DateFormatter.format(page.getStartedDateTime())); 
     System.out.println("page id: " + page.getId()); 
     System.out.println("page title: " + page.getTitle()); 
     } 

     //Output "response" code of entries. 
     for (HarEntry entry : hentry) 
     { 
      System.out.println("request code: " + entry.getRequest().getMethod()); //Output request type 
      System.out.println(" response code: " + entry.getRequest().getUrl()); //Output url of request 
      System.out.println(" response code: " + entry.getResponse().getStatus()); // Output the 
     } 

     /* 
     // Once you are done manipulating the objects, write back to a file 
     System.out.println("Writing " + "fileName" + ".test"); 
     File f2 = new File("fileName" + ".test"); 
     w.writeHarFile(log, f2); 
     */ 
    } 
    catch (JsonParseException e) 
    { 
     e.printStackTrace(); 
     //fail("Parsing error during test"); 
    } 
    catch (IOException e) 
    { 
     e.printStackTrace(); 
     //fail("IO exception during test"); 
    } 

} 

}