首先 - 对任何新用户公平警告,远离appcelerator,该团队应该为他们所执行的工作感到羞耻。继续阅读一个例子。如果我错了,我会高兴地承认。客户的数据已经存在,移动应用程序正在使用现有的字段名称进行生产。
我正在arrowdb上使用(付费)帐户对其箭头云数据源执行batch_create。单个查询都运行良好,所以我知道没有关键或一般连接问题。登录工作,我可以做手动或自动会话管理,一切都适用于查询,创建,删除等。
我正在使用节点arrowdb 1.06库。
现在我们到达batch_create,登录后我的代码看起来像这样:
arrowDBApp.post("/v1/objects/EM/batch_create.json",
{"json_array": [
{
old_id: '537280ca1316e90db2335bf7',
old_acl_id: '5372800e1316e90da8331dac',
idp_id: '17',
reference: '17',
serves: [ '52a7c0a0534b2b0b5000002b' ],
meter: 'NO METER',
amps: '110',
property_id: '52a7c02612f73e0b1e0032f7'
}
]},
function (err, result) {
if (err) {
console.error(err.message);
}
else {
console.log(result.body.meta);
}
}
);
使用此代码我收到此错误: 使用HTTP状态代码返回的请求400索引0处的无效对象:无效的BSON ID 17 如果我将字段名称“idp_id”更改为“idpid”,问题就会消失并创建批处理。或者,如果我将内容从“17”更改为任何GUID“xxxxxxxxxxxxxxxxxxxxxxxx”格式。
所以问题是,有没有人知道在没有API验证内容必须是GUID格式的情况下在字段名称中使用“_id”的方法?就像我说数据已经存在,我们不想更改字段名称,不得不更新客户端应用程序(网络应用程序,移动应用程序等)。
为什么他们只是用'_id'作为guid验证任何字段?他们不会在单一创作上做到这一点?我有数十万个必须插入的对象,并且想要批量创建它们。
感谢您的帮助。除了糟糕的ACS经验之外,从来没有任何经验,总是去AWS人员....