私はNode.jsサーバー上でPassportを設定しており、主にTwitter認証戦略を使用しています。Passport.js - ブラウザのGETリクエストはOKですが、JSコードからのAJAXリクエストはありませんか?
ブラウザURL(Webブラウザの検索バーを使用)でのGET要求が、アプリケーションコード内からのAJAX要求とは異なる認証を受けているように思われる最近の発見には混乱しています。たとえば、私がPassportでログインした場合、私はブラウザにバックエンドサーバーに直接リクエストを送る特定のURLを指定することですべてにアクセスできます。しかし、バックエンドAPIに対するAngularまたはjQueryのリクエストは許可されていないようです。
これはまったく正しいでしょうか?もしそうならば、パスポートはJSコード内からのブラウザリクエストとAJAXリクエストの違いをどのように知っていますか?
(1)リクエストがXHR(AJAX)リクエストであるかどうかを確認できます。 (2)おそらく、正しいクッキーを持っていないという問題です。 Node.jsサーバーとまったく同じホスト名にあるAngularまたはjQueryコードですか? – apscience
を参照してください。http://stackoverflow.com/questions/15945118/detecting-ajax-requests-on-nodejs-with-express – apscience
コードが正しくないか、コードが単純に間違っている可能性があります。もちろん、 –