首先 - 对任何新用户的公平警告,远离 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”的方法?就像我说的数据已经存在,我们不想更改字段名称并且必须更新客户端应用程序(Web 应用程序、移动应用程序等)。
为什么他们会简单地验证任何带有“_id”的字段作为指导?他们不是在单次创作上做的吗?我有数十万个必须插入的对象,并且想批量创建它们。
感谢您的帮助。除了对 ACS 的糟糕体验之外,从来没有其他任何事情,总是去 AWS 的人......