Winkel: Ein Platzhalter '*' kann nicht verwendet werden, in der "Access-Control-Allow-Origin' - header, wenn die credentials-flag true ist

Ich weiß, es gibt eine Menge von Fragen zu CORS schon, aber Sie nicht scheinen, um meine Frage zu beantworten.

Also ich habe eine client-Anwendung geschrieben, in Winkel, die verwendet werden zum erstellen einer mobilen app mit Apache Cordova). Die html-Dateien und JavaScript-Dateien geladen werden, die vom mobilen Gerät.
Wenn ich simulieren, und ich senden Sie Anfragen an die REST-API-server habe ich zum ersten mal
"Nein" Access-Control-Allow-Origin' - header vorhanden ist, auf die angeforderte Ressource. Herkunft 'http://localhost:82' ist daher nicht erlaubt Zugriff".
Also ich habe header("Access-Control-Allow-Origin: *"); in meinem php-REST-API-Server. Ich kann nicht angeben, eine bestimmte Domäne, wie die Anfragen kommen von mobilen Geräten.

Jetzt habe ich "Einen Platzhalter '*' kann nicht verwendet werden, in der "Access-Control-Allow-Origin' - header, wenn die credentials-flag wahr ist."

Habe ich endlich eine Lösung gefunden, aber ich bin nicht sicher, es ist sicher zu halten Sie es wie dieses.

In meinem php-REST-API-Server habe ich aufgenommen:

if (isset($_SERVER['HTTP_ORIGIN'])) {
   header("Access-Control-Allow-Credentials: true");
   header("Access-Control-Allow-Origin: " . $_SERVER['HTTP_ORIGIN']);
   header("Access-Control-Allow-Headers: *, X-Requested-With, Content-Type");
   header("Access-Control-Allow-Methods: GET, POST, DELETE, PUT");
}

Bitte teilen Sie auf diese Weise zu arbeiten. Wenn es nicht sicher ist, oder nicht gut überhaupt, können Sie mir bitte sagen, wie dieses Problem zu lösen?

Vielen Dank!

  • Sind Sie sicher, dass Sie benötigen, um Access-Control-Allow-Credentials: true, mehr Infos über diesen header: stackoverflow.com/a/24689738/1956540
  • Nicht sicher, ob Sie wissen oder nicht, aber "credentials-flag ist wahr" bezieht sich nicht auf eine Access-Control-Allow-Credentials: true - header die Antwort-es bezieht sich auf request.withCredentials = true. (stackoverflow.com/questions/34078676/...)
InformationsquelleAutor mvermand | 2014-10-16
Schreibe einen Kommentar