問題タブ [laravel-passport]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
authentication - パスポート - 「未認証」。-ララベル5.3
認証プロセスunauthenticated
がすでに成功しているのに、なぜ私がいるのかを誰かが説明してくれることを願っています。Oauth 2
Laravel のドキュメントのようにパッケージをセットアップし、Passport
認証に成功し、トークン値などを受け取りました。get
しかし、たとえばでリクエストを実行しようとすると、レスポンスとしてエラーが発生します/api/user
。ドキュメントで説明されているようにUnauthenticated
、トークン値をキー name のヘッダーとして使用します。Authorization
この関数は、認証されたユーザーとして自分自身を返すことを想定していますが、取得しているのはUnauthenticated
. 同様に、最初のユーザーだけを返すと、再びUnauthenticated
.
Laracast
のセットアップをガイドするのチュートリアルでPassport
は、ガイダーはルートに を持っていません。->middleware("auth:api")
しかし、そこにない場合は、認証の必要はまったくありません!
提案や回答は大歓迎です。
vue.js - Laravel 5.3 Passport - Vue エラー: 式の評価中にエラーが発生しました
これは、過去 2 日間、私に頭痛を与えています。最近、laravel アプリケーションを 5.3 に更新し、ローカル環境で Laravel/passport を取り込みました。インストール後、すべてが期待どおりに機能します。
この更新を本番サーバーにプッシュすると、すべてが機能しますが、vue はパスポート コンポーネントでエラーをスローします。私はまだ vue に慣れていないので、何が原因なのかわかりません。
私が最後に試みたのは、本番サーバーに Laravel とパスポートを新規インストールしたところ、同じエラーが発生しました。このインストールをローカル マシンにプッシュすると、すべてが機能します。これはある種の依存関係エラーだと思います。
エラーは次のとおりです。
誰かが同じエラーに直面したことがありますか?どうすれば修正できますか?
編集:私はこれを修正することができました。php5.6 を php7 に更新し、次の PHP モジュールをインストールしました。libgmp-dev、php-gmp. 再度新規インストールを行ったところ、npm はパスポートが必要とする 2 つの依存関係について不平を言いました。mdanter/ecc および indigophp/hash-compat
php - Laravel 5.3 : パスポートの実装 - {"error":"invalid_client","message":"クライアント認証に失敗しました"}
Laracastに記載されている正確な手順に従いました: What's New in Laravel 5.3: Laravel Passport to implement api authentication
using oauth2
.
web.php
client/consumer プロジェクトの私のファイルは次のようになります。
authorize
クライアントが API にアクセスできるようにする必要があるアクセス許可要求ページを取得しています。しかし、承認をクリックすると、次のメッセージが表示されるページにリダイレクトされます。
これを解決するには?
laravel/passport
オフライン プロジェクトにはインストールしませんでした。私は何かを逃していますか?ビデオチュートリアルで言及されていることを正確に実行し、実装しました。私が気付いていない他の何かを含める必要がありますか?(私は oauth2 に関する非常に基本的な知識を持っています)。
それが役立つ場合は、インターネット接続があるときにオンライン システムに定期的にデータを送信するオフライン システムを実装しようとしています。そのため、保存する情報を含むリクエストを作成しapi
て送信できると考えました。post
laravel - フラグメントとして表示される Laravel パスポート ビュー コンポーネント
私の既存のLaravel 5.3プロジェクト内にLaravelパスポートを新たにインストールしました。
編集:Vueコンポーネント(デフォルトのサンプルコンポーネントでさえも)をインポートしようとすると、フラグメントとして表示されることに気付きました。
Vue コンポーネントをアプリケーションにインポートしようとしていますが、そうすると、クロムの Vue デバッグ ツールが要素がフラグメントであると通知します。
ページのソースを見ると、それらについて言及されていないため、コンポーネントがページに正しく登録されていると推測しています
私は周りを見回しており、vue でこのエラーを参照しているほとんどの場所は、vue コンポーネントがページ内の要素をルートとする div にラップされていないことが原因であることがわかりましたが、同じコンポーネントが新規インストールで機能しました。
これに関する問題を見つけるには、何を探す必要がありますか?
これが私のマスターレイアウトです
これが私のapp.jsのコードです
ここに私の api.blade.php のコードがあります
単純なルート クロージャーから呼び出します。
Web.php
php - 独自の API を使用する Laravel 5.3
現在、単一の API からモバイル アプリと Web アプリケーションを実行できるように、コードベースをより RESTful なパターンに移植しています。
laravel 5.3がLaravel Passportを実装するようになったことは知っていますが、独自のAPIを使用するにはどうすればよいですか。つまり、ユーザーがサインアップして認証トークン/ APIトークンを取得し、サーバーへの各リクエストがそのトークンに対してチェックされます。私のAPIルート、
追加した Http/kernal.php に、
私の $middleWareGroups 配列に。
では、ユーザーの認証キーを生成するにはどうすればよいですか。つまり、ユーザーがログインしたときに、そのユーザーにトークンを追加するにはどうすればよいでしょうか?
php - Laravel 5.3 とパスポート。API 用の単一のクライアントを作成しようとしています
モバイル アプリケーションを提供する API を作成しようとしています。PassportでLaravel 5.3を使用しています。
流れ自体はこんな感じです。モバイル アプリは API に Facebook アクセス トークンを提供します。このトークンは、ユーザーに関する情報 (Facebook ID、名前、プロフィール写真、電子メール) を取得するために使用されます。その時点で、バックエンドは、上記の情報がまだ存在しない場合はユーザー テーブルに挿入し、基本的に新しいユーザーを作成します。アクセス トークンはモバイル アプリによって既に付与されているため、バックエンドが facebook にログインする場所はどこにもないことに注意してください。
その後、バックエンドが、API 自体から他のルートにアクセスするために使用されるモバイル アプリにアクセス トークンを提供する必要があります。これは Passport 経由で行う必要があります。Passport を介してわかる限り、ユーザーごとに新しいクライアントを作成する必要がありますが、API が持つ唯一の「クライアント」はモバイル アプリであるため、私はそれを探していません。Facebook 経由で作成されたユーザーは、実際には API 自体ではなく、モバイル アプリのユーザーです。のスキーマoauth_clients
は次のとおりです。
これはまったく変更していません。これがデフォルトのスキーマです。
これは私のニーズには意味がありません。たくさんのクライアントは必要ありません。必要なクライアントは 1 つだけです。モバイルアプリ自体。
もちろん、モバイル アプリ自体のためだけにユーザーを作成することもできます。Facebook ユーザーには常にテーブル内のモバイル アプリが割り当てられuser_id
ますoauth_clients
が、それは間違っているようです。
php - カスタムLaravel Passport BearerTokenResponse
league/oauth2-server
現在、Laravel Passport(サーバーの実装に使用)を使用してLaravelをインストールしています。oauth2 トークンが付与されたときにユーザー ID を返したいので、それを使用して EmberJS アプリで認証されたユーザーを識別できます。
これを行うための推奨される方法は次のとおりです。
自分のクラスを作成します。
AuthorizationServer.getResponseType()
での変更vendor/league/oauth2-server/src
vendor/league/oauth2-server/src/AuthorizationServer.php
しかし、このアプローチでは、ファイルを git リポジトリに追加する必要があります。
これは私には非常に面倒で信頼できないようです。これを達成するためのより良い/よりクリーンな方法はありますか?