我使用这个 Node.js 代码:
var http = require('http');
var createClient = require('./createClient');
http.createServer(function (req, res) {
res.write('Hello World!'); //write a response to the client
var wolfram = require('wolfram').createClient("My ID");
var question = "how far nyc to chicago"
wolfram.query(question, function(err, result) {
var results = result[1].subpods[0].value ;
console.log("Result: %j", results)
res.write(results);
})
res.end();
}).listen(8080);
我在res.write(results)
上有一个错误 如果我// res.write(results)
注释错误的原因,结果将显示两次:
Result: "1158 km (kilometers)"
Result: "1158 km (kilometers)"
我想将result[1].subpods[0].value
存储在变量(结果(中,以便我可以在 html 页面 (res.write( 上显示它并在以后使用它。
很难阅读你的代码,因为它没有缩进,但看起来你在res.write((之前调用res.end((,因为Wolfram查询是异步的。尝试在同一回调功能块内移动res.write()
后res.end()
。