1.8.0 • Published 5 months ago

@ossiana/node-libcurl v1.8.0

Weekly downloads
-
License
MIT
Repository
github
Last release
5 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

1 year ago

1.7.10

5 months ago

1.7.11

5 months ago

1.7.12

5 months ago

1.7.9

5 months ago

1.7.8

5 months ago

1.7.12-1

5 months ago

1.7.7

5 months ago

1.7.6

5 months ago

1.7.5

5 months ago

1.7.4

5 months ago

1.6.9

7 months ago

1.6.8

11 months ago

1.7.11-1

5 months ago

1.6.7

11 months ago

1.6.6

1 year ago

1.6.5

1 year ago

1.7.11-0

5 months ago

1.8.0

5 months ago

1.6.6-beta.1

12 months ago

1.6.6-beta.0

12 months ago

1.6.11

7 months ago

1.5.9

1 year ago

1.6.10

7 months ago

1.5.8

1 year ago

1.6.13

6 months ago

1.6.12

7 months ago

1.5.6

1 year ago

1.6.15

6 months ago

1.6.14

6 months ago

1.6.17

5 months ago

1.6.16

5 months ago

1.6.19

5 months ago

1.6.18

5 months ago

1.7.3

5 months ago

1.7.2

5 months ago

1.7.1

5 months ago

1.7.0

5 months ago

1.5.10

1 year ago

1.5.12

1 year ago

1.5.11

1 year ago

1.5.5

1 year ago

1.5.4

1 year ago

1.5.3

1 year ago

1.4.6

1 year ago

1.4.5

1 year ago

1.4.4

1 year ago

1.4.3

1 year ago

1.4.2

1 year ago

1.4.1

1 year ago

1.5.2

1 year ago

1.5.1

1 year ago

1.5.0

1 year ago

1.4.9

1 year ago

1.4.11

1 year ago

1.4.8

1 year ago

1.4.10

1 year ago

1.4.7

1 year ago

1.4.12

1 year ago

1.3.11

1 year 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

2 years ago

1.0.0-test-ci-3

2 years ago

1.1.3-alpha-2

2 years ago

1.1.3-alpha-1

2 years ago

1.1.4-alpha-1

2 years ago

1.1.4-alpha-2

2 years ago

1.1.3-alpha-4

2 years ago

1.1.3-alpha-3

2 years ago

1.1.3-alpha-6

2 years ago

1.1.3-alpha-5

2 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