我想写一个类似于 cURL 的 function,并将结果通过 Express 的 Router 传递到网页上显示出来。
下面是 router/index.js
中的代码:
var express = require('express');
var router = express.Router();
var http = require("http");
/* cURL Module Test */
function cURL() {
var CURL_OPTION = {
hostname: 'fcsys.tk',
port: 80,
path: '/ip.php',
method: 'GET'
};
http.request(CURL_OPTION, function(res) {
console.log('STATUS: ' + res.statusCode);
console.log('HEADERS: ' + JSON.stringify(res.headers));
res.setEncoding('utf8');
res.on('data', function (chunk) {
console.log('BODY: ' + chunk);
global.abc = chunk;
});
}).end();
return global.abc;
}
/* GET home page. */
router.get('/', function(req, res) {
res.render('index', {cURL: cURL});
});
module.exports = router;
下面是网页部分的代码,只是取得 cURL 的返回值而已:
<p>cURL: <%=cURL()%></p>
但是打开页面会无法得到返回值,是 undefined
。
这个该怎么样解决呢?