1.8.0 • Published 10 months ago

@ossiana/node-libcurl v1.8.0

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

node-libcurl

Different with Nodejs fetch api

  • The fingerprint can be customized to look like chrome or firefox ,it modified the BoringSSL extension, set the custom cipher suite with Libcurl

Build Status

PlatformSupport
Windows (x64)Yes
Ubuntu (x86_64)Yes
MacOS (x86_64/arm64)Yes

How to Install

npm i -g pnpm

pnpm i @ossiana/node-libcurl

Use Sample

import { LibCurl, fetch, requests } from '@ossiana/node-libcurl'
// nonstandard
fetch("https://www.google.com").then(e => e.json())
const session = requests.session({
    redirect: true,
    cookies: {
        value: "a=1",
        url: "google.com"
    },
    proxy: "user:pwd@ip:port",
    defaultRequestHeaders: [
        ["sec-ch-ua-platform", '"Windows"'],
        ["user-agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36"],
        ["sec-ch-ua", '"Chromium";v="136", "Google Chrome";v="136", "Not.A/Brand";v="99"'],
        ["sec-ch-ua-mobile", "?0"],
        ["accept", "*/*"],
        ["sec-fetch-site", "same-origin"],
        ["sec-fetch-mode", "cors"],
        ["sec-fetch-dest", "empty"],
        ["sec-fetch-storage-access", "none"],
        ["referer", "https://www.google.com/search?q=1"],
        ["accept-encoding", "gzip, deflate, br, zstd"],
        ["accept-language", "en-US"],
        ["priority", "u=1, i"],
    ],
    httpVersion: "http2",
    verbose: true,
    timeout: 15, // 15 seconds
    // interface: "eth0",
    ja3: "auto",
    akamai: "auto",
    autoSortRequestHeaders: true,
    requestType: "fetch",
    // sslCert: {
    //     certBlob: ...;
    //     privateKeyBlob: ...;
    //     type: "PEM";
    //     password: ...;
    // }
});

await session.post("https://www.google.com", {
    params: {
        a: "b",
    },
    headers: {
        "Content-Type": "application/octet-stream",
    },
    data: new Uint8Array([1, 2, 3]),
    h2config: {
        weight: 220,
        streamId: 13,
    },
    // overwrite `autoSortRequestHeaders` [[Once]]
    headersOrder: [
        "referer",
        "Content-Type",
        ...
    ],
    // overwrite `requestType` [[Once]]
    requestType: "XMLHttpRequest"
})
   .then(e => console.log(e.text));
1.6.4

1 year ago

1.6.3

1 year ago

1.6.2

1 year ago

1.6.1

1 year ago

1.6.0

2 years ago

1.7.10

10 months ago

1.7.11

10 months ago

1.7.12

10 months ago

1.7.9

10 months ago

1.7.8

10 months ago

1.7.12-1

10 months ago

1.7.7

10 months ago

1.7.6

10 months ago

1.7.5

10 months ago

1.7.4

10 months ago

1.6.9

12 months ago

1.6.8

1 year ago

1.7.11-1

10 months ago

1.6.7

1 year ago

1.6.6

1 year ago

1.6.5

1 year ago

1.7.11-0

10 months ago

1.8.0

10 months ago

1.6.6-beta.1

1 year ago

1.6.6-beta.0

1 year ago

1.6.11

12 months ago

1.5.9

2 years ago

1.6.10

12 months ago

1.5.8

2 years ago

1.6.13

11 months ago

1.6.12

12 months ago

1.5.6

2 years ago

1.6.15

11 months ago

1.6.14

11 months ago

1.6.17

10 months ago

1.6.16

10 months ago

1.6.19

10 months ago

1.6.18

10 months ago

1.7.3

10 months ago

1.7.2

10 months ago

1.7.1

10 months ago

1.7.0

10 months ago

1.5.10

2 years ago

1.5.12

2 years ago

1.5.11

2 years ago

1.5.5

2 years ago

1.5.4

2 years ago

1.5.3

2 years ago

1.4.6

2 years ago

1.4.5

2 years ago

1.4.4

2 years ago

1.4.3

2 years ago

1.4.2

2 years ago

1.4.1

2 years ago

1.5.2

2 years ago

1.5.1

2 years ago

1.5.0

2 years ago

1.4.9

2 years ago

1.4.11

2 years ago

1.4.8

2 years ago

1.4.10

2 years ago

1.4.7

2 years ago

1.4.12

2 years ago

1.3.11

2 years ago

1.3.10

2 years ago

1.3.9

2 years ago

1.3.7

2 years ago

1.3.6

2 years ago

1.3.5

2 years ago

1.2.10

2 years ago

1.3.4

2 years ago

1.3.1

2 years ago

1.3.0

2 years ago

1.2.8

2 years ago

1.2.7

2 years ago

1.2.0

2 years ago

1.2.6

2 years ago

1.2.5

2 years ago

1.2.4

2 years ago

1.2.3

2 years ago

1.2.2

2 years ago

1.2.1

2 years ago

1.1.4-alpha-3

3 years ago

1.0.0-test-ci-3

2 years ago

1.1.3-alpha-2

3 years ago

1.1.3-alpha-1

3 years ago

1.1.4-alpha-1

3 years ago

1.1.4-alpha-2

3 years ago

1.1.3-alpha-4

3 years ago

1.1.3-alpha-3

3 years ago

1.1.3-alpha-6

3 years ago

1.1.3-alpha-5

3 years ago

1.1.2-alpha-6

3 years ago

1.0.9-alpha-5

3 years ago

1.1.2-alpha-7

3 years ago

1.1.2-alpha-4

3 years ago

1.0.9-alpha-3

3 years ago

1.1.2-alpha-5

3 years ago

1.0.9-alpha-2

3 years ago

1.0.9-alpha-1

3 years ago

1.0.8-alpha-3

3 years ago

1.0.8-alpha-4

3 years ago

1.0.8-alpha-5

3 years ago

1.0.8-alpha-1

3 years ago

1.0.8-alpha-2

3 years ago

1.1.0-alpha-1

3 years ago

1.1.0-alpha-4

3 years ago

1.1.0-alpha-5

3 years ago

1.1.0-alpha-2

3 years ago

1.1.0-alpha-3

3 years ago

1.1.1-alpha-3

3 years ago

1.1.1-alpha-1

3 years ago

1.1.1-alpha-2

3 years ago

1.1.2-alpha-2

3 years ago

1.1.2-alpha-3

3 years ago

1.1.2-alpha-1

3 years ago

1.0.7-alpha-1

3 years ago

1.0.7-alpha-2

3 years ago

1.0.7-alpha-3

3 years ago

1.0.6-alpha-3

3 years ago

1.0.6-alpha-2

3 years ago

1.0.6-alpha-1

3 years ago

1.0.6-alpha

3 years ago

1.0.6

3 years ago

1.0.5

3 years ago

1.0.4

3 years ago

1.0.3

3 years ago

1.0.2

3 years ago

1.0.1

3 years ago