2.10.0 • Published 9 months ago

@har-sdk/oas v2.10.0

Weekly downloads
-
License
MIT
Repository
github
Last release
9 months ago

@har-sdk/oas

Maintainability Test Coverage Build Status NPM Downloads

Transform your Swagger/OAS spec files into a series of HAR request objects.

  • Automatically generates fake data for all parameters
  • Compatible with Swagger and OAS specifications
  • Simple and easy-to-use API

With this library, you can easily generate requests with fake data to test your API using AutoCannon or DevTools.

Setup

To install the library, run the following command:

$ npm i --save @har-sdk/oas

Usage

To covert your specification, use the oas2har function as follows:

import schema from './swagger.json' assert { type: 'json' };
import { oas2har } from '@har-sdk/oas';

const requests = await oas2har(schema);
console.log(requests);

YAML files can also be loaded using js-yaml, as shown below:

import { oas2har } from '@har-sdk/oas';
import { readFile } from 'node:fs/promises';
import yaml from 'js-yaml';

const content = yaml.load(await readFile('./swagger.yaml', 'utf-8'));
const requests = await oas2har(content);
console.log(requests);

If you have your specification hosted remotely, you can use a library like axios to fetch it and then convert it to a HAR. Here's an example:

import axios from 'axios';
import { oas2har } from '@har-sdk/oas';

const url = 'https://example.com/swagger.json';
const response = await axios.get(url);
const requests = await oas2har(response.data);
console.log(requests);

Some specifications may incorporate example values for parameters provided in vendor extension fields, to include such examples in output use the oas2har function as follows:

import schema from './swagger.json' assert { type: 'json' };
import { oas2har } from '@har-sdk/oas';

const requests = await oas2har(schema, { includeVendorExamples: true });
console.log(requests);

Notice the includeVendorExamples option affects Swagger specifications only.

Some specifications may have configuration for Accept header value in request parameters section. The automatically inferred Accept header values may be skipped, to skip these inferred values in output use the oas2har function as follows:

import schema from './swagger.json' assert { type: 'json' };
import { oas2har } from '@har-sdk/oas';

const requests = await oas2har(schema, { skipAcceptHeaderInference: true });
console.log(requests);

License

Copyright © 2023 Bright Security.

This project is licensed under the MIT License - see the LICENSE file for details.

2.10.0

9 months ago

2.9.2

11 months ago

2.9.3

11 months ago

2.9.1

1 year ago

2.9.0

1 year ago

2.8.1

2 years ago

2.8.3

2 years ago

2.8.2

2 years ago

2.8.4

2 years ago

2.8.0

2 years ago

2.6.0

2 years ago

2.7.4

2 years ago

2.7.3

2 years ago

2.7.6

2 years ago

2.7.5

2 years ago

2.5.14

2 years ago

2.5.15

2 years ago

2.5.16

2 years ago

2.7.0

2 years ago

2.7.2

2 years ago

2.7.1

2 years ago

2.5.13

3 years ago

2.5.12

3 years ago

2.5.10

3 years ago

2.5.11

3 years ago

2.5.9

3 years ago

2.3.0

3 years ago

2.2.0

3 years ago

2.5.0

3 years ago

2.4.0

3 years ago

2.3.1

3 years ago

2.5.2

3 years ago

2.5.1

3 years ago

2.5.4

3 years ago

2.1.8

4 years ago

2.5.3

3 years ago

2.5.6

3 years ago

2.5.5

3 years ago

2.1.9

4 years ago

2.5.8

3 years ago

2.5.7

3 years ago

2.1.10

4 years ago

2.1.11

3 years ago

2.1.2

4 years ago

2.1.4

4 years ago

2.1.3

4 years ago

2.1.6

4 years ago

2.1.5

4 years ago

2.1.7

4 years ago

2.0.3

4 years ago

2.1.1

4 years ago

2.0.2

4 years ago

2.1.0

4 years ago

2.0.1

4 years ago

2.0.0

4 years ago

1.1.1

4 years ago

1.1.0

4 years ago

1.0.1

4 years ago

1.0.0

4 years ago