Каков полный список ожидаемых ответов JSON для DS.RESTAdapter?
Я пытаюсь написать собственный сервер на основе express.js для приложения Ember.js. Я хорошо лажу, но я постоянно застреваю, пытаясь угадать, какие ответы JSON Ember Data ожидают в данный момент.
Эта новая документация - отличное начало http://emberjs.com/guides/models/the-rest-adapter/, но недостаточно полная.
Мой колокол в темноте заставил меня понять (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 ??? ???
Может кто-нибудь помочь мне заполнить некоторые из этих пробелов?
Изменить, полный список ожидаемых ответов JSON
Эти ответы были почерпнуты из тестов блока адаптеров REST-дисплея ember-data и просмотрели сетевой трафик на Пример Ember Приложение данных.
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]}
Ответы
Ответ 1
Вместо того, чтобы колоть в темноте, посмотрите rest-adapter-test
Например, чтобы заполнить ваш вопрос об ответах на массовые обновления, L738 описывает ожидаемые данные ответа:
ajaxHash.success({ people: [
{ id: 1, name: "Brohuda Brokatz" },
{ id: 2, name: "Brocarl Brolerche" }
]});
Ответ 2
В настоящее время искать фразы ajaxResponse(
in rest-adapter-test.js
источник, вложенный в test("create - a payload with a new ID and data applies the updates"
, выглядит одинаково, чтобы читать требуемый ответ сервера.