同一请求,用python请求正常,但是用node请求报500

const https = require('https');

patchUrl = 'https://***.***.com/biz/visitorCard/download?data=%7B%22beginTime%22%3A%222020-07-05T16%3A00%3A00.000Z%22%2C%22endTime%22%3A%222023-08-19T15%3A59%3A59.000Z%22%2C%22pageNum%22%3A1%2C%22pageSize%22%3A10%2C%22queryList%22%3A%5B%5D%2C%22allTag%22%3A0%2C%22sortField%22%3A%22%22%2C%22sortType%22%3A%22%22%7D&token=eyJhbGciOiJIUzUxMiJ9.eyJziY3JlYXRlZCI6MTY4OTiOjYwMX0.ptUE18_j_jAEPN8zNt0eiq0MrIlExxM9QY5UP72atWiuxlPrldCDqDXzWqV3kSTyhPdrqI8eXD46FRnzCWhaJQ'


https.get(patchUrl, (response) => {
    console.info("code", response.statusCode);
}).on('error', (err) => {
    console.info('download-error', 'Failed to connect to the server.');
});
import requests


patchUrl = 'https://***.***.com/biz/visitorCard/download?data=%7B%22beginTime%22%3A%222020-07-05T16%3A00%3A00.000Z%22%2C%22endTime%22%3A%222023-08-19T15%3A59%3A59.000Z%22%2C%22pageNum%22%3A1%2C%22pageSize%22%3A10%2C%22queryList%22%3A%5B%5D%2C%22allTag%22%3A0%2C%22sortField%22%3A%22%22%2C%22sortType%22%3A%22%22%7D&token=eyJhbGciOiJIUzUxMiJ9.eyJziY3JlYXRlZCI6MTY4OTiOjYwMX0.ptUE18_j_jAEPN8zNt0eiq0MrIlExxM9QY5UP72atWiuxlPrldCDqDXzWqV3kSTyhPdrqI8eXD46FRnzCWhaJQ'

res = requests.get(patchUrl)

print(res.status_code)


为啥会出现这种情况呢?通过层层分析,最后得出这两种语言对headers设定的默认值不一样,nodejs中添加user-agent就正常运行了


https.get(patchUrl, {
    headers: {
        "User-Agent": "Mozilla/5.0 (Linux; Android 10; Redmi K30 Pro) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.101 Mobile Safari/537.36",
    }
}, (response) => {
    
    console.info("code", response.statusCode);
}).on('error', (err) => {
    console.info('download-error', 'Failed to connect to the server.');
});

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值