2

このコードを実行すると、このエラーが発生し、1時間後に理解しようとしましたが失敗しました

var http = require('http');
var url = require('url');
var fs = require('fs');
var port = 3010;

http.createServer(function(req, res){
    var query = url.parse(req.url,true).query;
    console.log(query);
    var file = query.f + query.t;
    //var file = "eurusd_m1.json";  
    console.log(file);
    var eurusd;
    fs.readFile('data/' + file + '_m1.json', function(err,data){
        if (err){
            console.log(err);
        }           
        eurusd = JSON.parse(data);
        console.log(eurusd);
    });
    res.writeHead(200,{'content-type':'text/plain'});
    res.end("helllo owrld");    
}).listen(port);

console.log("server running at port 3010..");

それは私に以下の結果を与えています:


server running at port 3010..
{ f: 'eur', t: 'usd' }
eurusd
{}
NaN
{ [Error: ENOENT, open 'C:\Users\Administrator\Documents\zeromq\data\NaN_m1.json']
  errno: 34,
  code: 'ENOENT',
  path: 'C:\\Users\\Administrator\\Documents\\zeromq\\data\\NaN_m1.json' }

undefined:1
undefined
^
SyntaxError: Unexpected token u
    at Object.parse (native)
    at C:\Users\Administrator\Documents\zeromq\dataserver.js:17:17
    at fs.js:207:20
    at Object.oncomplete (fs.js:107:15)

4

1 に答える 1