1

람다 함수 (NodeJS)를 실행하여 AWS 클라우드 검색에 일부 문서를 업로드하고 있습니다. 다음과 같은 오류가 계속 발생합니다.AWS CloudSearch 업로드 JSON : 값 태그는 배열 또는 객체가 될 수 없습니다.

{ 
    "errorMessage": "{ [\"The value of tags cannot be a JSON array or object\"] }", 
    "errorType": "DocumentServiceException", 
    "stackTrace": [ 
     "Object.extractError (/var/task/node_modules/aws-sdk/lib/protocol/json.js:48:27)", 
     "Request.extractError (/var/task/node_modules/aws-sdk/lib/protocol/rest_json.js:37:8)", 
     "Request.callListeners (/var/task/node_modules/aws-sdk/lib/sequential_executor.js:105:20)", 
     "Request.emit (/var/task/node_modules/aws-sdk/lib/sequential_executor.js:77:10)", 
     "Request.emit (/var/task/node_modules/aws-sdk/lib/request.js:678:14)", 
     "Request.transition (/var/task/node_modules/aws-sdk/lib/request.js:22:10)", 
     "AcceptorStateMachine.runTo (/var/task/node_modules/aws-sdk/lib/state_machine.js:14:12)", 
     "/var/task/node_modules/aws-sdk/lib/state_machine.js:26:10", 
     "Request.<anonymous> (/var/task/node_modules/aws-sdk/lib/request.js:38:9)", 
     "Request.<anonymous> (/var/task/node_modules/aws-sdk/lib/request.js:680:12)" 
    ] 
} 

내가

var item = { 
    type: 'add', 
    id: key, 
    fields: { 
     userid: value.userId, 
     storyid: value.storyId, 
     description: value.description, 
     title: value.title, 
     type: 'xyz' 
    } 
} 

의 문서 형식을 따랐다 이것은 내가 데이터를 업로드하기 위해 사용하고있는 코드가

exports.handle = function(e, ctx, cb) { 
    ctx.callbackWaitsForEmptyEventLoop = false; 
    var documentsBatch = e.data; 
    var params = { 
    contentType: 'application/json', 
    documents: JSON.stringify(documentsBatch) 
    }; 
    var req = cloudsearchdomain.uploadDocuments(params, function(err, data) { 
    if (err){ 
     // an error occurred 
     cb(err, null); 
    }else{ 
     // successful response 
    } 
    }); 
    req.send(); 
} 

로그인 내 캐릭터 라인 데이터는

비슷한 보이는
[ 
    { 
    "type": "add", 
    "id": "FpgAxxxxKrM4utxosPy23--KhO6FgvxK", 
    "fields": { 
     "userid": "FpgARscKlxaxutxosPy23", 
     "storyid": "-KhxbPpRP7REEK", 
     "description": "xyz ", 
     "title": "umm", 
     "type": "story" 
    } 
    }, 
    { 
    "type": "add", 
    "id": "FccccxosPy23--KiYbrrPjtJVk2bghO-W", 
    "fields": { 
     "userid": "FpgARfPy23", 
     "storyid": "-KiYbrfggO-W", 
     "description": "noo", 
     "title": "lalaa out", 
     "type": "story" 
    } 
    } 
] 

누군가 올바른 방향으로 나를 가리킬 수 있습니까?

답변

0

필드 이외의 추가 JSON 특성을 가진 다른 JSON 개체에서 문제가 발생했습니다. 일단 내가 그것을 발견하고 제거 할 수 있었다면 모든 것이 효과가있었습니다. 똑같은 글꼴이 있어야합니다. 그렇지 않으면 SDK가 더 좋은 예외를 던져야합니다.