問題タブ [symfony-4.3]

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.

0 投票する
1 に答える
351 参照

jwt - LexikJWTAuthenticationBundle を使用した無効な JWT トークン

symfony4 で API を開発し、LexikJWTAuthenticationBundle でトークンを管理しています。

localhost ではすべて正常に動作しますが、私のテスト サーバー (raspbery pi、apache、https の ubuntu mate) では、サーバーから 401 エラーと無効な JWT トークンが送信されます。

readme ( https://github.com/lexik/LexikJWTAuthenticationBundle/blob/master/Resources/doc/index.md#generate-the-ssh-keys )に記載されているように、追加しようとしました

仮想ホストを構成してApacheを再起動しますが、何も変わりません。

ご協力いただきありがとうございます

0 投票する
1 に答える
522 参照

symfony4 - FOS User BundleとSymfony 4を使用して、JMSシリアライザーでユーザーエンティティからパスワードフィールドを除外する方法は?

FOSUserBundle と JWT (LexikJWTAuthenticationBundle を使用) を使用して、ログイン機能を備えたシンプルな API を実装しました。すべて正常に動作し、ログインして jwt トークンを取得できます。しかし、ユーザーの詳細を取得するために API エンドポイントを作成すると、パスワード フィールドも応答で送信されます。

ユーザーの詳細を取得するためのコントローラー メソッドは次のようになります。

私のユーザーエンティティは次のようになります。

ご覧のとおり、私のSystemUserエンティティは にあるエンティティから拡張BaseUserされていFOSUserBundleます。

これは、API からユーザーの詳細を取得したときの応答 JSON の様子です。

では、応答からパスワード プロパティを除外するにはどうすればよいでしょうか。最新の Symfony 4.3 を使用しています。以前のバージョンの Symfony では、バンドル内のエンティティごとに jms シリアライザー構成を作成できましたが、Symfony 4 では大幅に変更されたため、バンドルを使用する必要がなくなり、この単純なアプリにはバンドルを使用していません。

0 投票する
1 に答える
553 参照

php - Symfony4のサービスへのDoctrine-Entityの依存性注入?

DI を介してサービスにエンティティを挿入しようとしています。

Entity は、Doctrine-JSON-ODM-library ( https://github.com/dunglas/doctrine-json-odm )を介して、データベース (ユーザー要求から照会された) の JSON フィールドから作成されます。

私は通常、リクエストとリポジトリを使用して依存関係を返すコンテキストクラスを作成します(ここで説明されているようにhttps://blogs.cuttingedge.it/steven/posts/2015/code-smell-injecting-runtime-data-into -コンポーネント/ )。ただし、私の依存関係はツリー構造内の深くネストされたデータに依存しているため、これは実行可能ではないようです。

深くネストされた構造を介して作成された依存関係を解決するにはどうすればよいですか?

0 投票する
2 に答える
1783 参照

php - WebTestCase で JSON リクエストを行う方法

Symfony 4 をインストールしてから API Platform をインストールします。

次に、このような Test クラスを作成します

を実行する./bin/phpunitと、エラーメッセージが表示されました

私の質問は、なぜ application/json として受信されないのですか? 適切な方法は何ですか?