2016-06-29 3 views
0

100 개의 레코드가있는 원시 데이터 파일이 있습니다. 이름 - 시작 위치는 0입니다. 주소 - 시작 위치는 50입니다.루프백을 사용하여 파일에서 데이터 읽기

이 데이터 [이름 및 주소]를 읽고 유효성 검사를 수행하고 DB에 정보를 저장하고 싶습니다. 이것이 루프백을 통해 어떻게 달성 될 수 있는지 제안하십시오. 이 접근하는

+0

node.js 파일 시스템 기능을 사용하여 파일을 읽을 수 있습니다. 그러나 실제로 파일을 읽고 데이터베이스를 업데이트하기위한 트리거는 무엇입니까? 이 일은 단 한 번만 할 것입니까? https://nodejs.org/api/fs.html – ASA2

+0

외부 소스에서 나는 CSV/XLS/XML 형식의 데이터를 받게 될 것입니다. 각 열 데이터를 읽고 DB의 유효성을 검사하고 업데이트해야합니다. 외부 소스에서받은 파일에는 여러 행 [레코드]이 포함됩니다. 각 행을 반복하고 필드 세부 정보를 가져와야합니다. – Vignesh

답변

0

한 가지 방법은 실제 수입을 할 수 귀하의 모델 중 하나에 원격 메소드를 추가 한 다음 파일을 읽을 npm에서 'csv'와 'xml'와 같은 일부 패키지를 사용하는 것입니다. 따라서, 기본 단계는 다음과 같습니다

  1. 이 파일을 통해 읽기 실제 파일을 읽고 데이터베이스를 업데이트하는 NPM에서 패키지를 추가 기존 모델에 원격 메소드를 추가합니다. 이 같은

뭔가가 :

// MyModel.js 
import fs = require('fs'); 
import xml = require('xml') 
import csv = require('csv') 

export function import(info, callback) { 

    // Get the current database connection. 
    var ds = this.dataSource.connector; 

    // *********************************************** 
    // ** READ FILES AND WRITE TO THE DATABASE HERE ** 
    // *********************************************** 
    // ---> 
    // *********************************************** 

    // Return results and/or error information. 
    return callback(null, data) 
} 

export function remoteMethod(model: any) { 
    model.remoteMethod(
     'import', 
     { 
      http: { verb: 'get' }, 
      accepts: {arg: 'info', type: 'data' }, 
      returns: [ 
       { arg: 'info', type: 'data' }, 
       { arg: 'data', type: 'data' } 
      ] 
     } 
    ) 
    return model; 
} 

이것은 '수'를 사용 http://mydomain/api/myModel/import를 사용하여 호출 될 것이다.

관련 문제