Такая бедя. Шлю PUT запрос на апдейт. На бэке для теста просто возвращаю тайтл. Через постман работает, если установить контент тайп application/x-www-form-urlencoded. В адаптере тоже его установил, но в постмане возвращается тайтл, а в эмбере нет. Где может быть проблема?
import RESTAdapter from 'ember-data/adapters/rest';
import config from '../config/environment';
import Inflector from 'ember-inflector';
import _ from 'lodash';
const { API_HOST, API_PREFIX } = config,
inflector = Inflector.inflector,
dataType = 'json',
contentType = 'application/json; charset=utf-8';
export default RESTAdapter.extend({
host: API_HOST,
namespace: API_PREFIX,
defaultSerializer: 'JSONSerializer',
headers: {},
sendRequest(body) {
return new Ember.RSVP.Promise((resolve, reject) => {
Ember.$.ajax(body).then(
data => Ember.run(null, resolve, data),
jqXHR => {
jqXHR.then = null; // tame jQuery's ill mannered promises
Ember.run(null, reject, jqXHR);
}
);
});
},
updateRecord(store, type, snapshot) {
const pathname = inflector.pluralize(_.camelCase(type.modelName)),
{ id } = snapshot;
let data = this.serialize(snapshot, { includeId: true }),
namespace = this.get('namespace'),
host = this.get('host'),
sendRequest = this.get('sendRequest'),
headers = this.get('headers'),
dataType = 'text',
contentType = 'application/x-www-form-urlencoded',
url = `${host}/${namespace}/${pathname}/${id}`;
let sendData = JSON.stringify(data);
return sendRequest({ type: 'PUT', headers, url, dataType, contentType, sendData });
},
});