What is parse-link-header?
The parse-link-header npm package is used to parse HTTP link headers, which are commonly used for pagination in APIs. It converts the link header string into a more manageable JavaScript object.
What are parse-link-header's main functionalities?
Parsing Link Headers
This feature allows you to parse a link header string into a JavaScript object. The example demonstrates parsing a GitHub API link header for pagination.
const parse = require('parse-link-header');
const linkHeader = '<https://api.github.com/user/repos?page=2&per_page=100>; rel="next", <https://api.github.com/user/repos?page=5&per_page=100>; rel="last"';
const parsed = parse(linkHeader);
console.log(parsed);
Other packages similar to parse-link-header
http-link-header
The http-link-header package provides similar functionality to parse-link-header by parsing HTTP link headers into a JavaScript object. It also offers additional methods to manipulate and format link headers.
link-header-parser
The link-header-parser package is another alternative that parses HTTP link headers. It focuses on simplicity and ease of use, providing a straightforward API for parsing link headers.
Parses a link header and returns paging information for each contained link.
var parse = require('parse-link-header');
var linkHeader =
'<https://api.github.com/user/9287/repos?page=3&per_page=100>; rel="next", ' +
'<https://api.github.com/user/9287/repos?page=1&per_page=100>; rel="prev"; pet="cat", ' +
'<https://api.github.com/user/9287/repos?page=5&per_page=100>; rel="last"'
var parsed = parse(linkHeader);
console.log(parsed);
{ next:
{ page: '3',
per_page: '100',
rel: 'next',
url: 'https://api.github.com/user/9287/repos?page=3&per_page=100' },
prev:
{ page: '1',
per_page: '100',
rel: 'prev',
pet: 'cat',
url: 'https://api.github.com/user/9287/repos?page=1&per_page=100' },
last:
{ page: '5',
per_page: '100',
rel: 'last',
url: 'https://api.github.com/user/9287/repos?page=5&per_page=100' } }
Installation
npm install parse-link-header
API
parseLinkHeader(linkHeader : String) : Object
Parses the given link header containing web links and returns an object keyed by
the rel
property that contains information about each link.