sdstoehr / har-reader

Library for accessing HTTP Archives (HAR) with Java
MIT License
91 stars 29 forks source link
har har-reader http httparchive java

HAR reader

Read HTTP Archives with Java.

<dependency>
  <groupId>de.sstoehr</groupId>
  <artifactId>har-reader</artifactId>
  <version>2.3.0</version>
</dependency>

Build Status codecov Maven Central

Usage

Reading HAR from File:

HarReader harReader = new HarReader();
Har har = harReader.readFromFile(new File("myhar.har"));
System.out.println(har.getLog().getCreator().getName());

Reading HAR from String:

HarReader harReader = new HarReader();
Har har = harReader.readFromString("{ ... HAR-JSON-Data ... }");

Some HAR generators use date formats, which are not according to the specification. You can tell HAR reader to ignore those fields instead of throwing an exception:

HarReader harReader = new HarReader();   
Har har = harReader.readFromFile(new File("myhar.har"), HarReaderMode.LAX);
Har har = harReader.readFromString("{ ... HAR-JSON-Data ... }", HarReaderMode.LAX);

You can also follow the next section and configure your own mapping configuration to deal with these fields.

Customizing HAR reader

As of version 2.0.0 you can create your own MapperFactory (DefaultMapperFactory)

public class MyMapperFactory implements MapperFactory {
    public ObjectMapper instance(HarReaderMode mode) {
        ObjectMapper mapper = new ObjectMapper();
        SimpleModule module = new SimpleModule();

        // configure Jackson object mapper as needed

        mapper.registerModule(module);
        return mapper;
    }
}

You can now use your configuration by instantiating the HarReader with your MapperFactory:

HarReader harReader = new HarReader(new MyMapperFactory());

Latest Releases

2.3.0 - 2023-11-17

Details

2.2.1 - 2022-05-26

Details

2.2.0 - 2021-03-27

Details

2.1.10 - 2020-10-05

Details

2.1.9 - 2020-06-30

This is the first release, which is provided both on GitHub and Maven Central repository.

Details

2.1.8 - 2020-05-24

Details

2.1.7 - 2019-11-05

Details

2.1.6 - 2019-10-04

Details

2.1.5 - 2019-09-06

Details

2.1.4 - 2019-05-24

Details

2.1.3 - 2018-10-18

Details

2.1.2 - 2018-08-02

Details

2.1.1 - 2018-07-26

Details

2.1.0 - 2018-03-11

response.getAdditional().get("_transferSize");

Details

2.0.3 - 2017-04-14

2.0.2 - 2016-11-21

2.0.1 - 2016-04-16

Details

2.0.0 - 2015-08-30

Details