問題タブ [django-graphql-jwt]

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 に答える
1266 参照

unit-testing - graphene_djangoまたはgraphql_jwtでGraphQLError例外をテストするには?

graphene_django と graphql_jwt を使用して、django でユーザー タイプと認証を実装しています。ここに私の2つのファイルがあります:アプリレベルのフォルダーである「users」という名前のフォルダーにあるコードと対応するテスト(ただし、djangoアプリではありません)

schema.py

tests.py

次に、テストを実行すると、次のように表示python manage.py test usersされます。

このようなstackoverflowを検索しました[例外が発生しましたが、assertRaisesによってキャッチされません][1]

[1]:例外が発生しましたが、assertRaises によってキャッチされていませんが、それでも問題を解決できません。では、GraphQLError は実際にどのようにテストできるのでしょうか?

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

python - /graphql での再帰エラー。最大再帰深度を超えました

問題の定義:

この公式リンクgraphene-jwtから、パッケージを使用してプロジェクトに JWT 認証を追加する方法に関する記事を読みました。チュートリアルで述べられていることによると、いくつかの変更をプロジェクトファイルに適用する必要があります。settings.py

  1. まず、パッケージをインストールする必要があります。
  1. MIDDLEWARE変数に AuthenticationMiddleware を追加します。
  1. JSONWebTokenBackend バックエンドAUTHENTICATION_BACKENDS変数の追加:
  1. JSONWebTokenMiddleware をGRAPEHENE変数に追加します。

4 番目のステップを実行した後、すべてのリクエストにlocalhost:8000/graphqlは次のスタック トレースがあります。

プロジェクトの構造:

スクリーンショット: grpahql の最大再帰深度がスクリーンショットを超えました

バグなのか自分のせいなのかわかりません。(API は上記の構成を追加する前に完全に機能し、何度もチェックされています) インターネットで検索しましたが、質問に対する適切な回答が見つかりませんでした。誰かが私を助けてくれたらありがたいです。

PS1:私に関連する最も有名な質問は、主に Python の最大再帰深度エラーについて話しているthis oneです。しかし、ここでこのエラーの原因を理解できません。

PS2:次の行も settings.py に追加しましたが、それでも機能しません!