EJSON.parse() 메서드는 문자열 값을 JSON으로 변환합니다.
구문
EJSON.parse() 메서드는 문자열을 입력으로 사용하고 출력 형식을 제어하는 선택적 수정자를 사용합니다.
EJSON.parse(string, [options])명령 필드
EJSON.parse() 메서드는 이러한 필드를 사용합니다.
필드 | 유형 | 필요성 | 설명 |
|---|---|---|---|
| 문자열 | 필수 사항 | 문자열 |
| 문자열 | 옵션 | 출력 유형 을 수정합니다. 유일한 옵션은
|
행동
대화형 세션 내부에서 또는 mongosh --eval 를 사용하여 시스템 명령줄에서 EJSON.parse() 를 호출할 수 있습니다.
대화형 세션에서 EJSON.parse() 을(를) 호출합니다.
EJSON.parse(string)시스템 명령줄에서 EJSON.parse() 을(를) 호출합니다.
mongosh --eval "EJSON.parse(string)"예시
이러한 예제를 시도하려면 먼저 sales 컬렉션을 만듭니다.
db.sales.insertMany( [ { custId: 345, purchaseDate: ISODate("2023-07-04"), quantity: 4, cost: Decimal128("100.60"), }, { custId: 346, purchaseDate: ISODate("2023-07-12"), quantity: 3, cost: Decimal128("175.45"), }, { custId: 486, purchaseDate: ISODate("2023-08-01"), quantity: 9, cost: Decimal128("200.53"), },] )EJSON.parse()를 사용하여 입력 형식 지정
EJSON.parse() 문자열을 입력으로 받습니다. 이 예제에서는 EJSON.stringify() 메서드를 사용하여 sales collection을 문자열로 내보냅니다.
let salesCollection = EJSON.stringify( db.sales.find().toArray() )를 사용하여 쌍을 예상하는 와 같은 EJSON.parse() 메서드의 형식을 지정합니다.string db.collection.insertMany() JSON
db.salesRestored.insertMany( EJSON.parse( salesCollection ) )EJSON.parse()salesCollection의 값 형식을 JSON 쌍으로 지정합니다.db.salesRestored.insertMany()은 JSON 쌍을 사용하여salesRestored컬렉션을 생성합니다.
명령줄에서 EJSON.parse() 사용
파일이나 API 호출과 같은 외부 소스에서 문자열 데이터를 가져오려면 mongosh --eval 메서드와 함께 EJSON.parse() 를 사용합니다.
이 예제에서는 sales collection을 파일로 저장합니다.
let salesCollection = EJSON.stringify( db.sales.find().toArray() )
fs.writeFileSync( 'sales.json', salesCollection )이 코드는 로컬 시스템에 sales.json 라는 파일을 생성합니다. 파일을 가져오고 새 collection을 만들려면 mongosh 를 종료하고 명령줄에서 --eval 작업을 실행합니다.
# Note: This example is formatted to fit on the page.
mongosh --quiet \ --eval "db.salesFromFile.insertMany( \ EJSON.parse( fs.readFileSync( 'sales.json', 'utf8' ) ) )"EJSON.parse()문자열을 입력으로 받습니다. 이 예제에서는fs.readFileSync()을 사용하여sale.json파일을 문자열로 읽습니다.EJSON.parse()입력 문자열의 형식을 JSON 쌍으로 지정합니다.db.salesFromFile.insertMany()JSON 쌍에서salesFromFile컬렉션을 만듭니다.
경고
JSON을 BSON으로 변환하기 전에 신뢰할 수 없는 입력을 검증하세요
JSON string을 BSON으로 변환하고 그 결과 BSON을 쿼리, 업데이트 또는 명령에 사용하면, 공격자가 연산자 또는 예상치 못한 필드 값을 삽입하여 작업의 의미를 변경할 수 있습니다. 이 위험은 JSON이 사용자, API 요청 또는 다른 신뢰할 수 없는 소스에서 유래할 때 가장 높습니다.
변환 전 입력 유효성 검사에 대해 자세히 알아보려면 JSON을 BSON으로 변환하기 전에 신뢰할 수 없는 입력 유효성 검사를 참조하세요.
자세히 알아보기
EJSON 문서
Mozilla 개발자 네트워크 JSON.parse 문서