Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将带有STPointFromText的位置字段添加到azure移动服务中_Javascript_Azure_Server Side - Fatal编程技术网

Javascript 将带有STPointFromText的位置字段添加到azure移动服务中

Javascript 将带有STPointFromText的位置字段添加到azure移动服务中,javascript,azure,server-side,Javascript,Azure,Server Side,我有azure移动服务数据库。我试图将数据放入其中,并在服务器端添加位置字段。下面是我正在使用的源代码。问题是服务器响应“内部服务器错误”,我的客户端抛出“MobileServiceInvalidOperationException”,但添加了该数据。若我将request.execute()而不是request.respond()添加到success函数中,那个么它可以正常工作,但会在表中添加我不想要的额外行。如何将数据放入数据库而不出现“内部服务器错误” 将对STPointFromText()

我有azure移动服务数据库。我试图将数据放入其中,并在服务器端添加位置字段。下面是我正在使用的源代码。问题是服务器响应“内部服务器错误”,我的客户端抛出“MobileServiceInvalidOperationException”,但添加了该数据。若我将request.execute()而不是request.respond()添加到success函数中,那个么它可以正常工作,但会在表中添加我不想要的额外行。如何将数据放入数据库而不出现“内部服务器错误”


将对STPointFromText()的调用移到查询字符串之外。比如说,

 function insert(item, user, request) { 
        var location = geography::STPointFromText ....
        var queryString = "INSERT INTO mytable (name, city, country, latitude, longitude, location) VALUES (?, ?, ?, ?, ?, ?)";         
        mssql.query(queryString, [item.name, item.city, item.country, item.latitude, item.longitude, location], { 
                    success: function() {                     
                        request.respond(); 
                    }

              }); 
    }

如果这没有帮助,那么在日志中查找有关错误的其他信息。

问题是,当您在客户端使用
InsertAsync
时,它希望您插入的项目和数据库中的新Id得到响应。因此,您必须用适当的响应更新行:

request.respond(statusCodes.CREATED, item);
在InsertAsync之后的客户端,您的项目中有Id:

await actionTable.InsertAsync(action);
var id = item.Id;

没有帮助,只是说“地理”没有定义。任何“是地理::STPointFromText共享代码???移动服务应该如何解决这个问题?您可以将该功能包装到一个服务中,然后只需调用该服务即可添加位置变量。我刚刚添加了一些属性。
await actionTable.InsertAsync(action);
var id = item.Id;