【问题标题】:Sending get request through NodeJS while passing a custom cookie & cookie value通过 NodeJS 发送获取请求,同时传递自定义 cookie 和 cookie 值
【发布时间】:2020-08-11 16:24:47
【问题描述】:

我已经尝试过 http、https、superagent 和 nodejs 的 requestify 包。 它们似乎都不适用于传递 cookie(或者我只是做错了) 这里的任何方式都是我的代码。

var request = require('request')
var cookieJar = request.jar();

const req = request.defaults({
    jar: cookieJar
})

var url = 'https://roblox.com/mobileapi/userinfo'
var input = 'CookieValueHere' // obviously this isnt the real value im passing.

req.get({
    url : url,
    headers : {
        "Accept": "application/json",
        ".ROBLOSECURITY": input
    }, 
    (e,r,b) => {
        if (e) console.error(e)
        console.log(b)
    }
)

我在python中重新创建了它,发现结果应该是

{
  "UserID": 1,
  "UserName": "User",
  "RobuxBalance": 0, 
  "ThumbnailUrl": "https://tr.rbxcdn.com/3decdb8a572d4c9ff206ce4984f1579e/352/352/Avatar/Png",
  "IsAnyBuildersClubMember": false,
  "IsPremium": false
}

我只会使用 python,但我更喜欢 NodeJS。 任何帮助将不胜感激!

【问题讨论】:

  • 您是否在您的headers 对象中尝试过'Cookie': '.ROBLOSECURITY=' + input?
  • @SebastianKaczmarek 不幸的是那没有用。我可以判断的方式是它是否返回一个完整的页面源而不是一个 JSON 表,该表不会令人遗憾地返回。
  • @DonFoumare 也很遗憾您链接的内容也不起作用。
  • @Arilis,如果您想发送一个带有 GET 请求的 cookie 到服务器,您应该在 Cookie 标头中传递它:'Cookie': 'ROBLOSECURITY=THISISTHECOOKIE'。如果您想将其发送到给客户的响应中,请使用'Set-Cookie': 'ROBLOSECURITY=THISISTHECOOKIE'

标签: javascript node.js


【解决方案1】:

在您的具体情况下,您必须使用:

cookieJar.setCookie(cookieName, input);

在提出请求之前。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-11-06
    • 2016-03-15
    • 2014-08-13
    • 2011-11-22
    • 2014-10-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多