2017-04-21 5 views
3

Ich habe eine PHP-API, die die angegebenen Anmeldeinformationen überprüft. Zu Beginn meiner PHP-Datei habe ich diesenZugriffskontrolle Erlaube Herkunft - funktioniert nicht

header('Access-Control-Allow-Origin: http://example.org'); 
header('Access-Control-Max-Age: 3628800'); 
header('Access-Control-Allow-Methods: GET, POST, PUT, DELETE'); 
header('Content-type: application/json'); 

Obwohl, wenn ich meine API verwenden (unter Verwendung von AJAX) ich diesen Fehler:

XMLHttpRequest cannot load http://api.example.com/?params=parameters+go+here. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://example.org' is therefore not allowed access. 

HINWEIS: Ich habe Grund zu glauben, dass es ein Fehler in der AJAX

$.ajax({ 
    url: 'http://api.example.com/?type=verify&username=' + username + '&password=' + password, 
    dataType: 'json', 
    success: function(result) { 
     success = result['success']; 
     return success; 
    } 
}); 

jede Hilfe würde bieten könnte sehr geschätzt. "Allow-Control-Allow-Origin" Erweiterung Link-

Danke, CSF

+0

deutlich Ihre Header sind ** ** nicht gesendet - überprüfen Sie im Browser ** ** Entwickler-Tools Netzwerk-Registerkarte sehen, welche Antwort-Header gesendet werden tatsächlich –

+0

@ JaromandaX Danke. Überprüfen Sie einfach die Registerkarte "Entwickler-Netzwerk". Ich weiß jedoch nicht, wie die Header angezeigt werden. – csf30816

+0

durch Klicken auf die Anfrage (wie ich nicht einmal wissen, welchen Browser Sie haben, das ist das beste, was ich vorschlagen kann) –

Antwort

0

es ist einfach ... Wenn Sie Chrome verwenden ich Ihnen vorschlagen, die Allow-Control-Allow-Origin: * Erweiterung installieren ...

enter image description here

Nach hinzugefügt Chrom, müssen Sie gerade/deaktivieren Taste cross-origin resource sharing Umschalten aktivieren ...

https://chrome.google.com/webstore/detail/allow-control-allow-origi/nlfbmbojpeacfghkpbjhddihlkkiljbi?utm_source=chrome-app-launcher-info-dialog

+0

Ja, aber was ich will, ist dies eine API für jedermann zugänglich. – csf30816

+0

siehe [diesen Link] (https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS#Access-Control-Allow-Headers) ... Access-Control-Allow-Header erlaubt nicht * als akzeptierter Wert ... sollten Sie die akzeptierten Header senden (erstes X-Requested-With, wie der Fehler sagt). –

+0

Danke für den Link – csf30816

0

Nun, wenn Sie wollen einfach nur Ihren Code testen dann den Download ~ here aber wenn Sie es wollen auf jedem Browser arbeiten/Client ohne Anforderung der Erweiterung .. dann bitte beziehen Sie sich auf here .. GOOD GLUCK!

+0

Gibt es eine Version davon mit PHP? Das wäre großartig, danke. – csf30816

+0

beziehen sich auf diese - http://www.mjhall.org/php-cross-origin-resource-sharing/ – Ankit

Verwandte Themen