Cuál es la lista completa de respuestas JSON esperadas para DS.¿Rehacer?


Estoy intentando escribir un expreso personalizado.servidor basado en js para un Ember.js app. Me estoy llevando bastante bien, pero estoy constantemente atascado tratando de adivinar qué respuestas JSON Ember Data está esperando en un momento dado.

Esta nueva documentación es un gran comienzo http://emberjs.com/guides/models/the-rest-adapter / pero no lo suficientemente completo.

Mi apuñalamiento en la oscuridad me ha llevado a entender (Ember pre4, Ember Data 11):

Context                                Server URL          Method     Req. Data                  Resp. Data
~~~~~~~                                ~~~~~~~~~~          ~~~~~~     ~~~~~~~~~                  ~~~~~~~~~~
Getting a list of all users            /users              GET                                   {"users":[{...},{...}]}
Getting a particular user              /users/123          GET                                   {"user":{...}}
Creating a user                        /users              POST       {"user":{...}}             ???
Updating a user                        /users/123          PUT        {"user":{...}}             ???
Deleting a user                        /users/123          DELETE     ???                        ???

Creating a user (bulkUpdate)           /users              POST       {"users":[{...},{...}]}    ???
Updating a user (bulkUpdate)           /users/bulk         PUT        {"users":[{...},{...}]}    ???
Deleting a user (bulkUpdate)           /users/123          DELETE     ???                        ???

Puede alguien ayudar me llene algunos de estos espacios en blanco?

Editar, la lista completa de respuestas JSON esperadas

Estas respuestas se obtuvieron de las pruebas de unidad de adaptador ember-data REST y observando el tráfico de red en la Aplicación de ejemplo Ember Data.

Context                                Server URL          Method     Req. Data                  Resp. Data
~~~~~~~                                ~~~~~~~~~~          ~~~~~~     ~~~~~~~~~                  ~~~~~~~~~~
Getting a list of all users            /users              GET                                   {"users":[{...},{...}]}
Getting a particular user              /users/123          GET                                   {"user":{...}}
Creating a user                        /users              POST       {"user":{...}}             {"user":{...}}
Updating a user                        /users/123          PUT        {"user":{...}}             {"user":{...}}
Deleting a user                        /users/123          DELETE     N/A                        null

Creating a user (bulkCommit)           /users              POST       {"users":[{...},{...}]}    {"users":[{...},{...}]}
Updating a user (bulkCommit)           /users/bulk         PUT        {"users":[{...},{...}]}    {"users":[{...},{...}]}
Deleting a user (bulkCommit)           /users/bulk         DELETE     {"users":[1,2]}            {"users":[1,2]}
Author: James Andres, 2013-02-17

2 answers

En lugar de apuñalar en la oscuridad, echa un vistazo a rest-adapter-test

Por ejemplo, para completar su pregunta sobre los datos de respuesta para actualizaciones masivas, L738 describe los datos de respuesta esperados:

ajaxHash.success({ people: [
  { id: 1, name: "Brohuda Brokatz" },
  { id: 2, name: "Brocarl Brolerche" }
]});
 24
Author: Mike Grassotti,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-07-15 20:45:59

Actualmente busca frases ajaxResponse( en rest-adapter-test.js fuente anidada en test("create - a payload with a new ID and data applies the updates" buscar bloques similares para leer la respuesta requerida del servidor.

 0
Author: Marecky,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-08-21 11:58:25