0.0.6 • Published 6 years ago

tnfetch v0.0.6

Weekly downloads
1
License
MIT
Repository
-
Last release
6 years ago

wrapper for node-fetch with tough-cookie

Motivation

I like the http apis of fetch. They are awesome. And I want to use them.

using node-fetch in node, sadly does not send any header. That is good, so it is giving us full control. Still, I don't want to handle cookies by hand. So I provide a wrapper for node-fetch.

Having the cookiesupport in node, just allow you to write scrits that login, do stuff and logout. How cool is that. That is usefull for testing or accessing a website.

Having that, I will make sure that is can work well together with fetchival.

Demo

const tnfetch = require('tnfetch');

// tnfetch is a function to that return a new fetch with its own cookie store
const fetch = tnfetch();

fetch('https://amazon.com').then(amazonCom=>{
    processHTML(amazonCom);
    // after query some webside, we can get the cookies
    // they are an array and can easily be saved with JSON.strinify
    // and filtered with cookies.filter(...)
    const cookies = fetch.getCookiesIndex();
    saveCookies(cookies);
    
    // when having cookies from somewhere you can createa new fetch 
    // and set them to be used in the session
    const session2Cookies = loadOtherCookies('session2');
    fetch = tnfetch();  // now it is new and has no cookies
    fetch.setCookieIndex(session2Cookies);

    return fetch('https://amazon.com/')
}).then(loggedInAmazonCom=>{
    processHTML(loggedInAmazonCom);
});

// a modified verison of fetchival, that will allow you to set fetch from the options
// not just on the global and it is no longer build for browser, only for node-fetch
const fetchival = tnfetch.fetchival;

const amazon = fetchival("https://amazon.com/",{fetch: tnfetch()});
// for the rest just see the documentation of fetchival, it is very clean
0.0.6

6 years ago

0.0.5

6 years ago

0.0.4

6 years ago

0.0.3

6 years ago

0.0.2

6 years ago

0.0.1

6 years ago