2017-11-26 3 views
0

Ich arbeite mit einem Apache2/Silex API mit einer eckigen 5 Front. ich kein Problem mit meinen get-Anfragen habe, es funktioniert gut, aber ich mein Problem mit POST, PUT oder DELETE-Anfragen nicht beheben kann, halte ich diese Störung zu erhalten =>Angular 5/Apache/Nein 'Access-Control-Allow-Origin'-Header

Antwort auf Preflight-Anfrage doesn Zugriffskontrolle nicht bestehen: Nein Der 'Access-Control-Allow-Origin'-Header ist auf der angeforderten Ressource vorhanden. Herkunft 'http://localhost:4200' ist daher nicht erlaubt Zugriff.

ich gründlich durchsucht, und ich glaube, ich verstehe, das cors Konzept, hier ist meine .htaccess =>

DirectoryIndex bootstrap.php 
<Limit GET POST PUT DELETE OPTIONS> 
    Allow from all 
</Limit> 

Header set Access-Control-Allow-Origin "*" 
RewriteCond %{REQUEST_METHOD} OPTIONS 
RewriteRule ^(.*)$ $1 [R=200,L,E=HTTP_ORIGIN:%{HTTP:ORIGIN}]] 
#Header set Access-Control-Allow-Origin "*" 
Header always set Access-Control-Allow-Credentials "true" 
Header always set Access-Control-Max-Age "1000" 
Header always set Access-Control-Allow-Headers "X-Requested-With, Content-Type, Origin, Authorization, Accept, Client-Security-Token, Accept-Encoding" 
Header always set Access-Control-Allow-Methods "POST, GET, OPTIONS, DELETE, PUT" 

Wenn ich auf meinen Wunsch Tab in meinem Chrome-Browser sehen, ich sehe darüber hinaus dass meine Optionen hat Preflight-Anfrage „200 OK“ Statuscode und die Response-Header sind die diejenigen =>

Access-Control-Allow-Credentials:true 
Access-Control-Allow-Headers:X-Requested-With, Content-Type, Origin, Authorization, Accept, Client-Security-Token, Accept-Encoding 
Access-Control-Allow-Methods:POST, GET, OPTIONS, DELETE, PUT 
Access-Control-Max-Age:1000 
Connection:Keep-Alive 
Content-Length:574 
Content-Type:text/html; charset=iso-8859-1 
Date:Sun, 26 Nov 2017 10:18:21 GMT 
Keep-Alive:timeout=5, max=100 
Server:Apache/2.4.25 (Debian) 

ich dann verstehen, dass das Problem ist, dass die „Access-Control-Allow-Origin“ Header fehlt bei Optionen vor Flug (obwohl dieser Header ist hier mit einer Anfrage erhalten, ...

So ist meine Frage => ist es möglich, mit. Htaccess auf eine Option Preflight automatisch mit dem 'Access-Control-Allow-Origin' zu beantworten Header UND ein 200 Status und wenn ja wie?

Jede Hilfe wäre sehr geschätzt :)

PS: Englisch meine Mutter zu seiner Zunge nicht, entschuldigen Sie bitte alle Fehler, ...

Antwort

0

Wie so oft, ist die einfache Tatsache, meine Frage zu aufschreiben zu haben wirklich geholfen zu einer besseren Analyse der Situation, ...

Wie bereits erwähnt, ich fand heraus, dass das Problem in der Tat mit meinem htaccess war, dass die 'Access-Control-Allow-Origin'-Header nicht gesendet, und das war, weil ich das in meinem htaccess schreiben musste =>

Header set Access-Control-Allow-Origin "*" 

statt =>

Header always set Access-Control-Allow-Origin "*" 

Das ist alles ^^ war

ich diese Antwort falls jemand lasse würde das gleiche Problem haben als ich, ...

Haben Sie einen schöner Tag o/