newsapi-wrapper is a convenient wrapper to call the News API. All you will need is an API key that you can get here.
const newsapi = require('newsapi-wrapper');
newsapi
.setApiKey('xxxxyyyzzz')
.setCountry('ca')
.setCategory('sports')
.setPageSize(25)
.send()
.then(response => {
console.log(`Results: ${response.totalResults}`);
response.articles.forEach(article => {
console.log(article.title);
});
})
.catch(err => {
console.log(err);
});
npm install newsapi-wrapper
yarn add newsapi-wrapper
Sets a single default value. Possible keys: country, category, apiKey, pageSize
newsapi.setDefault('country', 'de');
Sets multiple default values at once. Takes an object as a parameter. Possible keys: country, category, apiKey, pageSize.
newsapi.setDefaults({
country: 'de',
pageSize: 10,
category: 'sports'
});
Returns an array containing all valid categories, which are: business, entertainment, general, health, science, sports, technology
Sets the news category for the next request (not for all subsequent requests). Returns a Request object that can be used to chain other method calls, or to send the request.
const request = newsapi.setCategory('health');
request.setCountry('uk').send();
Sets the country for the next request (not for all subsequent requests). Returns a Request object that can be used to chain other method calls, or to send the request.
Sets the page size for the next request (not for all subsequent requests). Returns a Request object that can be used to chain other method calls, or to send the request.
Sets the NewsAPI key for the next request (not for all subsequent requests). Returns a Request object that can be used to chain other method calls, or to send the request.
The call to send
returns a promise which resolves when the response from the News API is received as intended. Otherwise, it is rejected:
newsapi.request()
.setCategory('health')
.setPageSize(15)
.send()
.then(response => {
// Probably do something with response.articles
})
.catch(err => {
console.log(err);
});
Returns an object you can use to build a request, send it, and process the result. Intended to used as a chain of method calls:
newsapi.request()
.setCategory('health')
.setPageSize(15)
.send();
request() is now optional and considered deprecated, because you can call all the request methods on newsapi directly. The above example would then look like this:
newsapi.setCategory('health')
.setPageSize(15)
.send();