Node.js http get 请求与 Web 浏览器产生不同的结果

标签 node.js

这是登录表单,因此不幸的是我没有可用的演示。我希望我能充分解释发生了什么。

我从 hurl.it 得到这个结果: enter image description here 这是整个标题和正文。 enter image description here

我尝试使用 Node.js request 模块模拟相同的结果:

var request = require ('request');

request
  .get({
    uri: "https://app.bom.com/j_login_user",
    qs: {
      "email": "email",
      "password": "pass"
    },
    headers: {
      "accept": "*/*",
      "accept-encoding": "gzip, deflate",
      "user-agent": "runscope/0.1",
      "connection": "keep-alive"
    }
  })
  .on('response', function(response) {
    log.info(response);
  });

但是,结果与 hurl.it 产生的结果完全不同。以下是响应对象的 Pastebin,响应代码为 200 而不是 302:http://pastebin.com/rKEH0Uwr

最佳答案

请求 by default handles redirects automatically ,因此您永远不会看到 302 响应代码。

关于Node.js http get 请求与 Web 浏览器产生不同的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31928794/

相关文章:

Node.js + Webpack + TypeScript : access to path of project with source files (not usage project)

javascript - NodeJS/MySQL 查询数据 url 中的引号

javascript - Node.js - 确保非阻塞调用完成

javascript - 将对象数组从 EJS 模板传递到 Javascript 函数?

javascript - 如何在纯 JavaScript 中使 node.js 需要函数

linux - 在 raspbian 上安装 npm 需要很多时间

javascript - User.id 未定义

javascript - Nitrous.io 上 Meteor App 的服务器端调试

javascript - 在nodejs中使用ffmpeg上传时,edge和firefox中的sharedarraybuffer错误但在chrome中没有

node.js - express.js 中的多语言路由?