2017-03-03 5 views
-1

Ich habe eine Lösung zu finden versucht, durch eine PHP mit Slim-API-Framework bedient cors auf meinem Winkel Anwendung zu ermöglichen.CORS Angular/PHP Schlanke Rahmen

Die API befindet sich unter domain.com und der eckigen Anwendung unter mobile.domain.com. Außerdem benutze ich nicht Backend, um eckige erste Route zu rendern, sondern reine nginx html config.

Ich habe versucht, Ursprung einzustellen zu erlauben, erlauben methodson die API/login GET/aber wenn ich die Anfrage senden erhalte ich diese Antwort:

Nein "Access-Control-Allow-Origin-Header vorhanden ist, auf der angeforderten Ressource. Origin 'null' ist daher nicht erlaubt.

Könnte mir jemand eine Richtung geben?

Antwort

0

Sie müssen den CORS-Header für Ihre Antwort festlegen, damit Ihre App auf das Back-End zugreifen kann.

$app->add(function($req, $res, $next){ 
    $res = $res->withHeader('Access-Control-Allow-Origin', 'mobile.domain.com'); 

    return $next($req, $res); 
}); 
0

Komplettlösung

$app->options('/{routes:.+}', function ($request, $response, $args) { 
return $response; 
}); 
$app->add(function ($req, $res, $next) { 
$response = $next($req, $res); 
return $response->withHeader('Access-Control-Allow-Origin','http://mysite') 
     ->withHeader('Access-Control-Allow-Headers', 'X-Requested-With, Content-Type, Accept, Origin, Authorization') 
     ->withHeader('Access-Control-Allow-Methods', 'GET, POST, PUT, DELETE, OPTIONS'); 
}); 

from