[英]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.