nodejsとjsonpを使用して、ハイチャートを理解しようとしていますが、コードの下で機能していません
<script type="text/javascript">
$(function () {
$.getJSON('http://myserverhere.com:3010/?f=GBP&t=USD&callback=?', function (data) {
alert("hey");
console.log(data);
// create the chart
$('#container').highcharts('StockChart', {
rangeSelector: {
selected: 1
},
title: {
text: 'AAPL Stock Price'
},
navigator: {
enabled: true,
height: 25
},
series: [{
type: 'candlestick',
name: 'AAPL Stock Price',
data: data,
dataGrouping: {}
}]
});
});
});
</script>
以下はnodejsの私のserver.jsです
var http = require('http');
var url = require('url');
var fs = require('fs');
var port = 3010;
var path = "C:\\mypath\\";
http.createServer(function (req, res) {
if (req.url === '/favicon.ico') {
res.writeHead(200, {
'Content-Type': 'image/x-icon'
});
return res.end();
}
var query = url.parse(req.url, true).query;
var urlString = {
pathname: url.parse(req.url).pathname,
queryparam: url.parse(req.url, true).query
};
var file = query.f + query.t;
var gbpusd;
fs.readFile(path + file + '_M1.json', function (err, data) {
if (err) {
console.log(err);
}
//console.log(data);
gbpusd = JSON.parse(data);
console.log("query param");
console.log(urlString.queryparam.callback);
if (urlString.queryparam.callback && urlString.queryparam.callback != '?') {
console.log("in if block");
gbpusd = urlString.queryparam.callback + "(" + gbpusd + ");";
}
//console.log(eurusd);
res.writeHead(200, {
'content-type': 'application/json',
'content-lenght': gbpusd.length
});
//res.write(JSON.stringify(gbpusd));
var p = JSON.stringify(gbpusd);
res.end(p);
});
}).listen(port);
console.log("server running at port 3010..");
単純なハイチャート ローソク足です。jsonp データを操作しようとしています。コンソールはデータをログに記録し、jsonp関数を正常に返しますが、ハイチャートコールバックでは機能せず、アラートも実行されていません。ノード res.end() またはノードがデータを返す方法に何らかの問題があるにおいがしますが、わかりませんが、計算された推測にすぎません。どなたかお願いします。