Ich versuche Omniauth zu verwenden, um meinen Client auf eine externe Service-Autorisierungsseite zu leiten. Mein Client verwendet ember.js und mein Server ist ein Rails-Server. Wie die Dinge stehen, bin ich in der Lage den Anruf mit wenig Problem auf meiner Server-Seite zu machen, aber mein Mandant nicht umleiten, Thöring mir einen Fehler beim LesenKein 'Access-Control-Allow-Origin'-Header ist auf der angeforderten Ressource vorhanden. Herkunft 'Null' ist daher nicht erlaubt
Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'null' is therefore not allowed access. The response had HTTP status code 404.
einige der Forschung hat gezeigt, dass ich verwenden müssen CORS, die ich installiert und konfiguriert habe. Jetzt muss ich nur wissen, wo und wie ich den access-control-allow-origin
Header auf meinen Code anwende. Kann mir jemand bei diesem Problem helfen?
meine Route:
get 'auth/:provider/callback' => 'sessions#create'
meine Sitzungen Controller:
class SessionsController < ApplicationController
def create
@request.env
auth = request.env['omniauth.auth']
Account.recieve_donation(auth)
end
end
Wo ich die 'Origin' Header Client-Seite fügen und die' Access-Control-Allow-Origin' header serverseitig? Was genau sollten sie sein? Wenn ich die Anfragephase starten kann, heißt das, dass ich schon gut bin: Access-Control-Allow-Origin serverseitig? – d00medman
Ich benutze nicht Ember und Rails, aber in allen Sprachen und Frontend-Frameworks, wenn Sie eine Anfrage bekommen, können Sie einige zusätzliche Header mit der Anfrage angeben und in den Schienen können Sie Header setzen, während Sie die Antwort senden. –
hmm, dann ist es wirklich nur eine Frage der Grammatik zu diesem Zeitpunkt. Wie würden Sie dies in einem Frontend Framework/Backend MVC Framework tun, mit dem Sie vertraut sind? Ich stelle mir vor, dass mir das zumindest in die richtige Richtung weist. – d00medman