繁体   English   中英

有关如何执行基本javascript / node.js HTTP帖子的问题? 使用请求库

[英]Questions on how to do a basic javascript / node.js HTTP post? Using the request library

后续#2 :我认为这是99%的“我的坏”,因为没有正确使用node.js的回调(调用了一个调用回调的回调...)。 当我正确地重构它时,即使在IntelliJ中,一切似乎都可以正常工作。 我什至想出了一种安排回调函数的方法,这种方法对Java程序员似乎有些理智。 不知道为什么它可以在命令行上运行,但可能与node.js如何处理线程/异步内容有关。

不知道我是否应该删除整个问题。

原始问题如下:

我是一位资深的Java程序员,在Javascript,node.js或请求方面几乎没有零经验。 我想做一个基本的HTTP GET(最后是POST)。 Mikeal的请求框架( https://github.com/mikeal/request )看起来很合理。 但是我无法弄清楚如何将响应转换为变量,以便可以对其进行解析。 他的示例都将其发送到控制台。

我的代码是

var Request = require('request');
var ggg;
Request.get('http://www.google.com', function (error, response, body) {
        console.log(body) // Print the google web page.
        ggg = body;

});

我正在IntelliJ Webstorm7调试器中运行它。 我在回调中设置了一个断点(在ggg =主体行),该断点永远不会触发。 而且,出于记录,控制台也未记录任何内容。 在此代码后的断点处,ggg被列为“未定义”。

不知道这是我的误解,还是IntelliJ怪异,还是请求库不起作用。

后续行动 :我认为我的intellij中的某些事情弄糟了。 当我通过节点nameoffile.js从命令行运行此代码时,它似乎可以工作。

好吧,首先

npm list

并检查您是否已安装request ...其他安装使用

npm install request

然后您的代码中就有一个简单的错误。在console.log之后缺少分号

console.log(body);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM