您好我在“插入”操作中编写了以下代码。
function insert(item, user, request) {
item.createdDate = new Date();
item.updatedDate = new Date();
var node = { id: '',
textSize: 20,
backColor: 'Blue',
parentId: '' };
console.log('Root bubble initialized with default params: ', node);
request.execute({success:function()
{
node.parentId = item.id;
var nodeTable = tables.getTable('Nodes');
nodeTable.insert(node);
}});
}
但是我在日志中收到以下错误...
请求'POST / tables / Tree'已超时。这可能是由于脚本无法写入响应,或者无法及时从异步调用返回而导致的。
此外,我在ios客户端应用程序中收到以下错误
Domain = com.Microsoft.WindowsAzureMobileServices.ErrorDomain Code = -1302“错误:请求已超时....
但调试日志显示代码的所有部分都按预期成功执行。
我该如何解决这个问题?
提前致谢...
答案 0 :(得分:0)
您需要向呼叫者返回响应。一旦覆盖request.execute
函数的成功回调,默认行为(返回对调用者的响应)就不再执行了。您可能需要以下代码中的某些内容。
function insert(item, user, request) {
item.createdDate = new Date();
item.updatedDate = new Date();
var node = { id: '',
textSize: 20,
backColor: 'Blue',
parentId: '' };
console.log('Root bubble initialized with default params: ', node);
request.execute( {
success: function() {
node.parentId = item.id;
var nodeTable = tables.getTable('Nodes');
nodeTable.insert(node, {
request.respond(statusCodes.CREATED, item);
});
}
});
}