簡體   English   中英

為什么 cURL 返回正確的值而不是 node-libcurl?

[英]Why does cURL return correct value but not node-libcurl?

我正在使用 cURL 來獲取網站(返回我想要的錯誤)。

$ curl 'https://matchmaker.krunker.io/seek-game?hostname=krunker.io&region=us-ca-sv&game=SV%3A4jve9&autoChangeGame=false&validationToken=QR6beUGVKUKkzwIsKhbKXyaJaZtKmPN8Rwgykea5l5FkES04b6h1RHuBkaUMFnu%2B&dataQuery=%7B%7D

但是,當我在 Node.JS 中使用node-libcurl package 時,我收到錯誤 1020。為什么會發生這種情況?

const { curly } = require('node-libcurl')
const url = 'https://matchmaker.krunker.io/seek-game?hostname=krunker.io&region=us-ca-sv&game=SV%3A4jve9&autoChangeGame=false&validationToken=QR6beUGVKUKkzwIsKhbKXyaJaZtKmPN8Rwgykea5l5FkES04b6h1RHuBkaUMFnu%2B&dataQuery=%7B%7D'

curly.get(url)
    .then(({ statusCode, data }) => console.log(statusCode, data))

1020 不是 curl 錯誤代碼,快速谷歌搜索表明 1020 是 Cloudflare 的常見防火牆錯誤,參考https://community.cloudflare.com/t/error-1020-cannot-log-in現場如何修復/71784

LIBcurl 請求和 curl 請求之間的服務器最明顯的區別是 libcurl 沒有用戶代理,但 curl 有,並且阻止缺少用戶代理的請求並不少見(wikipedia.org 是 1例如阻止缺少用戶代理的請求),添加用戶代理並重試。

curly.get(url,{userAgent:"imaginate's awesome curl script"})
    .then(({ statusCode, data }) => console.log(statusCode, data))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM