2017-10-24 10 views
0

Wie kann ich Daten von Ember an einen Express-Server senden?So empfangen Sie Daten von Ember senden

Nach den offiziellen Dokumenten, können wir eine Aktion in einem Router wie folgt speichern tun:

export default Ember.Route.extend({ 
    model(params) { 
    var photo = this.get('store').createRecord('photo', { 
     title: 'ni hao xin ji lu', 
     owner: 'ViII', 
     city: 'Dalian', 
     image: 'fafa.jpg', 
     star: 3, 
     description: '.....' 
    }); 

    photo.save(); 

Auf der Serverseite, zum Beispiel Express verwendet wird, wie folgt aus:

router.post('/photos', function(req, res, next) { 
    console.log(req.body)//How To Do Here 
}); 

Tat , wird der Server das Post-Ereignis auslösen, aber wenn ich die req Konsole heraussuche, gibt es nichts über die Fotodaten von der Ember-Anfrage.

Habe ich etwas vergessen? Wie übertrage ich mit Ember Daten an den Server, damit der Server sie empfangen kann?

Ich benutze die neueste Ember-Version.

Antwort

0

standardmäßig Ember werden die Daten an den Server als JSON senden. Du musst Express sagen, dass er das analysieren soll. Ich glaube, Embers JSONAPIAdapter einen content-type Header application/vnd.api+json sendet, die für die bodyParser ein paar zusätzliche Konfiguration benötigt:

var bodyParser = require('body-parser'); 
app.use(bodyParser.json({type: 'application/vnd.api+json'})); 
+0

ja, müssen application/vnd.api + json Inhaltstyp hinzufügen oder RESTAdapter ändern, gerade versucht, dank sehr viel. –

Verwandte Themen