2
두 개의 노드 앱이 서로 관련되어 있습니다. 그들 중 하나는 하위 프로세스 exec
메소드를 사용하여 다른 하나로부터 호출됩니다.하위 프로세스에서 JSON 파일 읽기
function readAsync(files, configs, callBack) {
var result = [];
files.forEach(function (item, i) {
result = result.concat(JSON.parse(fs.readFileSync(item, { encoding: 'utf8' })));
if (i === files.length - 1 && typeof (callBack) === 'function') {
var _ret = _.chain(result)
.uniqBy(function (x) { return x.url })
.sortBy(function (x) { return x.title })
.value();
filterByConfigs(_ret, configs, function (filteredResult) {
callBack(filteredResult);
});
}
})}
나는 독서에이 오류와 JSON 파일을 구문 분석 : 저명한 응용 프로그램에서, 나는이 방법으로 몇 가지 JSON 파일을 읽고 있습니다. 그러나 독립적으로 하위 응용 프로그램을 실행할 때 오류 및 문제가 없습니다.
undefined:1
SyntaxError: Unexpected end of JSON input
at Object.parse (native)
at E:\Open Source Projects\src\cli\readFiles.js:30:37
at Array.forEach (native)
at readAsync (E:\Open Source Projects\src\cli\readFiles.js:29:11)
at E:\Open Source Projects\src\cli\readFiles.js:19:9
at E:\Open Source Projects\src\cli\getJsonFiles.js:18:13
at FSReqWrap.oncomplete (fs.js:123:15)
JSON 파일 샘플 :
[
{
"title": "Document Manager",
"subTitle": "Document manager - indexing, Filter file and rename - delete - share document.",
"url": "https://play.google.com/store/apps/details?id=com.document.manager.filescanner&hl=en&gl=us",
"appId": "com.document.manager.filescanner",
"price": "0",
"minInstalls": 1000000,
"score": 4.2,
"version": "1.4"
},
{
"title": "Mini Scanner - PDF Scanner App",
"subTitle": "Fast easy way to scanner, professional pdf documents, Support SD card + Send Fax",
"url": "https://play.google.com/store/apps/details?id=com.simplescan.miniscanner&hl=en&gl=us",
"appId": "com.simplescan.miniscanner",
"price": "0",
"minInstalls": 100000,
"score": 4.6,
"version": "1.0.9"
}
]
사람은 아직이 상황에 갇혀 얻었다? 감사.
json 파일 내용을 질문에 추가 할 수 있습니까? –
@CiroSpaciari 확실합니다. 지금 거기에있다. –
읽을 때'toString()'을 호출 해보십시오. –