我试图使用nodejs
从html页面获取一些文本这是网址。从这个网址我想得到字符串0e783d248f0e27408d3a6c043f44f337c54235ce .
我试过这种方式。但没有得到任何数据
var getGitKey = function (context, callback) {
http.get("gggg/status", function(res) {
var data = "";
res.on('data', function (chunk) {
data += chunk;
});
res.on("end", function() {
console.log("DATA-------------------------------");
console.log(data);
callback(data);
});
}).on("error", function() {
// callback(null);
});
};
请帮我解释我的代码错误
答案 0 :(得分:2)
我认为您的代码很好。你只需要确保。
http
模块需要var http = require('http');
getGitKey
的匿名函数。像getGitKey();
对我有用的完整代码是
var http = require("http");
var getGitKey = function (context, callback) {
http.get("http://integration.twosmiles.com/status", function(res) {
var data = "";
res.on('data', function (chunk) {
data += chunk;
});
res.on("end", function() {
console.log("DATA-------------------------------");
console.log(data);
callback(data);
});
}).on("error", function() {
// callback(null);
});
};
getGitKey();
结果为access denied
,因为您的网页受到简单身份验证的保护。如果您尝试直接在浏览器上打开它,也会发生同样的情况。如果您有用户名和密码来访问该页面,那么您可以参考以下SO答案,了解有关使用带有基本身份验证的http模块的详细信息。
How to use http.client in Node.js if there is basic authorization