[英]How to read a json file in my node.js app?
我有一個簡單的node.js服務,其中我對jsonSchema中定義的模式執行一些json驗證。 該服務看起來像:
app.post('/*', function (req, res) {
var isvalid = require('isvalid');
var validJson=true;
var schema = require('./schema.json')
isvalid(req.body,schema
, function(err, validObj) {
if (!validObj) {
validJson = false;
}
handleRequest(validJson,res,err,req);
});
})
嘗試使用上面第四行中的直接require語句。 這會產生一個錯誤:
SyntaxError: c:\heroku\nodejs_paperwork\schema.json: Unexpected token t
這是我的schema.json:
{
type: Object,
"schema": {
"totalRecords": {
type: String
},
"skip": {
type: Number
},
"take": {
type: Number
}
}
您可能已經忽略了。 您可以使用require
語句加載並解析它。
var jsonData = require('/path/to/yourfile.json');
但是,上述方法的輸出將被緩存,一旦您更新了JSON文件並再次將其加載為require,它就會從緩存中加載內容。 如果存儲模式的JSON文件不經常更改,則此方法可能有用。
如果您想每次從磁盤而不是從緩存加載JSON文件。 使用fs
:
var fs = require('fs');
fs.readFile(filepath, 'utf8', function (err, data) {
if (err) {
// handle error
return;
}
jsonData = JSON.parse(data);
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.