我试图将我从服务器获取的XML字符串转换为我的Lambda函数中的JSON.
我已经设置了这个相当简单的示例来模拟我使用DynamoDB从服务器获得的XML答案.(目前我只想尝试转换)
'use strict';
var AWS = require('aws-sdk');
var docClient = new AWS.DynamoDB.DocumentClient({region: 'eu-west-1'});
exports.handler = function (e, ctx, callback){
let table = "dsbTable";
let bpNumber = 1337;
var test;
var x2js = new X2JS();
let params = {
TableName: table,
Key:{
"bpNumber": bpNumber
},
};
docClient.get(params, function(err, data) {
if (err) {
console.error("Unable to read item. Error JSON:", JSON.stringify(err, null, 2));
callback(err, null);
} else {
console.log("GetItem succeeded:", JSON.stringify(data, null, 2));
console.log('test' +data.Item.getBp);
//var jsonObj = x2js.xml_str2json(data.Item.getBp);
//console.log(jsonObj);
callback(null, …Run Code Online (Sandbox Code Playgroud)
在dynamoDB中,我有一个具有连字符属性的表.(例如名字)
现在我想用javascript更新它们.到目前为止这是我的代码:
//create UpdateExpression and ExpressionAttributeValues
let updateExpression = "set ";
let expressionAttributeValues ={};
if (e.firstName !== null){
updateExpression = updateExpression + " "+ 'first-name'+" = :f,";
expressionAttributeValues[":f"] = e.firstName;
}
let table = "tableName";
let bpNumber = e.bpNumber;
let params = {
TableName: table,
Key: {
"bpNumber": bpNumber
},
UpdateExpression: updateExpression,
ExpressionAttributeValues: expressionAttributeValues,
ReturnValues:"UPDATED_NEW"
};
console.log("Updating the item...");
docClient.update(params, function(err, data) {
if (err) {
console.error("Unable to update item. Error JSON:", JSON.stringify(err, null, 2));
} else {
console.log("UpdateItem succeeded:", …Run Code Online (Sandbox Code Playgroud) 使用 DynamoDb 和此处提供的“读取”功能我将如何仅检索特定项目(例如,仅名字、姓氏和城市)
我可能需要添加某种过滤器,但是我无法找到任何我能找到的东西用。
这是我的表结构(以 bpNumber 为主键):
Item:{
"salutationCode": "02",
"lastName1": "Berg",
"firstName": "Anne",
"street": "Am Dächle",
"streetNumber": "22/2",
"zipcode": "33425",
"countryCode": "DE",
"city": "Hausen",
"bpNumber": 222,
"dateOfBirth": "1955-07-01",
"attri": [
{
"attri1":"nonono"
},
{
"attri2": "yeayeayea"
}
]
}
Run Code Online (Sandbox Code Playgroud)
这是我正在使用的“读取”方法:
read(){
var docClient = new AWS.DynamoDB.DocumentClient()
var table = "businessPartnersData";
var bpNumber = 222;
var params = {
TableName: table,
Key:{
"bpNumber": bpNumber
}
};
docClient.get(params, function(err, data) {
if (err) {
console.error("Unable to read item. Error …Run Code Online (Sandbox Code Playgroud)