Ich habe eine Vielzahl von verschiedenen Funktionsaufrufen versucht, aber nicht herausfinden, wie Sie einen Download für eine CSV in EmberJs auslösen.Laden Sie eine CSV-Datei in EmberJs
Hier ist mein letzter Code:
let endpoint = '/api/foo/';
let options = {
url: endpoint,
type: 'POST',
data: {},
dataType: 'text'
};
return new Ember.RSVP.Promise((resolve, reject) => {
options.success = function(result) {
var uri = 'data:application/csv;charset=UTF-8,' + encodeURIComponent(result);
window.open(uri, 'foo.csv');
};
options.error = (xhr, errorThrown) => {
console.log('error');
// return Ember.run(null, reject, this.didError(xhr, xhr.status, xhr.responseJSON, 1));
};
Ember.$.ajax(options);
});
Dieser Code erhebt keine Server- oder Client-Seite Fehler. Es bekommt eine 200 Antwort. Keine JavaScript-Fehler, und keine Konsole loggt irgendetwas, also weiß ich, dass es den Fehlerblock nicht trifft. Aber ... es wird den Dateidownload auf dem Client nicht auslösen. Weiß jemand, was fehlt?
Gibt es etwas Besonderes zu Ihrer Anfrage oder ist es nur ein einfacher URL-Anruf? Ich verwende eine Aktion {{action "downloadOrdersCSV"}}, um downloadOrdersCSV aufzurufen: function() {window.open ("yoururl", '_ blank');} –