Ich habe ein Stück von Angular JS, die eine JSON-Datei in meinem Google Drive liest:Anfrage-Header-Feld Accept-Encoding ist nicht erlaubt bei der Verwendung von Google Drive und AngularJS
yummy.controller("slideCtrl", ['$scope', function($scope) {
}]).directive('slideElement', ['$interval', '$http',($interval, $http) {
return {
restrict: 'E',
link: function(scope, element, attrs) {
var path = 'https://googledrive.com/host/0B-74lO-UfPKoaDRySEsyQkZwNjQ/';
element.html('<div class="loading"><img src="img/loading.gif"></div>');
$http({
method: 'GET',
url: path + 'reduced.json'
}).then(function(response) {
console.log(response.data);
});
}]);
In Chrome und Firefox sowie IE, der Code läuft ohne Fehler. Aber in Safari, erhalte ich folgende Fehlermeldung:
Failed to load resource: Request header field Accept-Encoding is not allowed by Access-Control-Allow-Headers.
ich versucht habe, und fügte hinzu:
{ headers: { 'Accept-Encoding': undefined }}
Aber das ist mein Problem nicht lösen.
Wie kann ich meinen Code in Safari arbeiten lassen? Vielen Dank.
Vielen Dank für Ihre Antwort. Aber mein Code läuft gut in Chrome und FF. Nur in Safari tritt mein Code auf. Also ich glaube es ist das Javascript Problem, nicht das Problem im Server. Außerdem kann ich die Einstellung in Google Drive nicht ändern. –
Abhängig von der Antwort des Servers kann es sich auf bestimmte Browser auswirken (einige sind flexibler als andere). Hast du es mit Content-Type-Parametern versucht? – thegio
Tut mir leid, funktioniert nicht. Vielen Dank. –