我正在为我的spine.js应用程序编写node.js(express)中的一个小api。 在数据库中获取和创建新对象非常有效。但是在删除/编辑时我现在就遇到了问题。 每个对象都获得由JS应用程序创建的个人ID。 在数据库中,每个条目也都有一个唯一的密钥。
当我调用object.destroy()时,我可以看到发送到我服务器的ajax请求。但作为id的参数,我总是拥有应用程序给出的id。 但是为了删除/更新数据库中的东西,我需要存储在数据库中的密钥(在我的情况下是mongoDB) 那么如何将正确的ID发送到服务器或在服务器端识别正确的条目??
答案 0 :(得分:1)
为什么不在创建模型时发回正确的ID,如Spine documentation中所示。
创建新的Page记录后,Spine会发送POST请求 to / pages包含以下内容:
POST /pages HTTP/1.1 Host: spine-rails3.herokuapp.com Accept:
application/json, text/javascript, */*; q=0.01 Content-Type:
application/json; charset=UTF-8 X-Requested-With: XMLHttpRequest
Content-Length: 65
{"name":"Dummy page","id":"EEAF4B17-5F1D-4C06-B535-D9B58D84142F"}
然后服务器应该回复这样的事情:
HTTP/1.1 201 Created Content-Type: application/json; charset=utf-8
Location: http://spine-rails3.herokuapp.com/pages/196 Content-Length:
28 Connection: keep-alive
{"name":"Dummy page","id":1}