問題タブ [django-channels]

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

django - 画像のサイズを変更する Django チャネル

2 つの画像フィールドを持つ写真のモデルがあります。1 つは元の画像用で、もう 1 つは元の画像のサイズ変更されたバージョン用です。

私が django-channles を選んだ理由は、私がすでに websocket の目的でそれを使用していたからであり、ドキュメントでは「...そして、それを超えて、アプリケーションが後で簡単にオフロードできる重要でないタスクがたくさんあります。キャッシュへの保存や、新しくアップロードされた画像のサムネイル表示など、応答が送信されました。」.

sorl-thumbnailまたはdjango-imagekitまたはその他の方法を使用して、 django-channelsを使用して幅 470px および自動高さになるように画像のサイズを変更するにはどうすればよいですか?

0 投票する
0 に答える
53 参照

python - Django Channels 関数の終了

私は現在、ユーザーがボタンをクリックするとソケットを送信し、Web スクレイピング プログラムを実行して結果をユーザーに返す Web サイトを持っています。

簡単にするために、ソケットを受信すると、次のコードを持つ consumer.py にルーティングされるとしましょう。

ただし、この機能の実行を停止する「終了」ボタンも追加したいのですが、その方法がわかりません。私は次のことをすることを考えました:

しかし同時に、このコードは特に洗練されているようには見えないので、もっと簡単な方法はないかと考えていました。

0 投票する
6 に答える
20910 参照

django - django-channels を使用して単一のユーザーにメッセージを送信する

私は、ドキュメントを読んだり、例をいじったりするなど、django-channelsを試してきました。

新しいインスタンスをデータベースに保存することによってトリガーされる単一のユーザーにメッセージを送信できるようにしたいと考えています。

私のユースケースは、(セロリタスクを介して) 新しい通知を作成し、通知が保存されると、この通知を単一のユーザーに送信します。

これは可能のように思えます ( django-channels docsから)

...重要な部分は、任意のイベント (作成したイベントを含む) に応答してコードを実行できる (そしてチャネルに送信できる) ことです。モデルの保存、他の受信メッセージ、またはビューとフォーム内のコード パスからトリガーできます。

ただし、ドキュメントをさらに読んでdjango-channels examplesをいじってみると、これを行う方法がわかりません。databinding と liveblog の例は、グループへの送信を示していますが、単一のユーザーに送信する方法がわかりません。

0 投票する
0 に答える
1261 参照

django - Django Channels wssが接続していない404エラーを受信しました

サーバーをローカル サブネットからドメインに移動しようとしています。メインの Web ページは機能しており、SSL の背後にあります。Apache は、任意の HTTP 接続から HTTPS への URL を書き換えます。ただし、ブラウザからJavaScriptで接続しようとすると、次のようになります。

次のエラーが表示されます。

settings.py の私の構成は次のとおりです。

編集 (Apache 構成データに追加):

私の Apache の default.conf は次のとおりです (単純に HTTPS に書き直します)。

Apache の secure.conf:

編集 apache がリクエストを受信して​​いるが、何もしていないことが わかりました other_vhosts.access.log を追跡したところ、chrome コンソールで新しい websocket を作成したときに、apache が GET リクエストをログに記録しましたが、django アプリに転送していないようです。

また、ワーカーを実行し、redis サーバーをセットアップし、daphne も実行しています。この問題の可能な解決策があれば教えてください

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

django - Django チャネルで Elastic Beanstalk を使用すると Websocket エラーが発生する

ロードバランサーを使用して AWS Elastic Beanstalk で動作するように、django チャネルを利用したチャットアプリを取得しようとしています。

私は基本的にhttps://github.com/jacobian/channels-exampleのコードを Elastic Beanstalk で動作するように変更しています。コマンドを使用してローカルで正常に実行できます

問題は、Elastic Beanstalk でデプロイすると、チャット アプリの起動時に次のエラーが表示されることです。

https://stackoverflow.com/a/29831723/3667089で提案されたソリューションを試しましたが、別のエラーコードが表示されました

また、ロード バランサーのリスナー ポートを TCP 80 に変更し、SSL 証明書を取得してセキュアなリスナー ポートを SSL 443 に変更しましたが、それでも同じエラーが発生します。

AWS Elastic Beanstalk で socket.io を使用した Websocketsも読みましたが、Django のプロキシ サーバーを構成するオプションはありません。デフォルトで Apache を使用していると思います。

Elastic Beanstalk を機能させるための設定に欠けているものは何ですか?

これを変更して、daphne サーバーを asgi で実行できるようにする方法はありますか?

0 投票する
4 に答える
8205 参照

django - グループに保存されているチャンネルを一覧表示することはできますか?

django-channels を使用してグループに追加されたチャネルのリストにアクセスすることは可能ですか?

編集:

私が達成しようとしているのは、たとえば接続ユーザーのリストなど、すべてのチャネルのセッションにアクセスできるようにすることです。

これまでのところ、接続を一覧表示するデータベース ベースのシステムを使用しています。しかし、ws_disconnect コンシューマーを実行せずにサーバーがシャットダウンした場合、これらの接続オブジェクトはデータベースに残ります。これは望ましくありません。

編集2:

接続しているユーザーを一覧表示するには、 を見つけましdjango-channels-presenceた。テストします。

0 投票する
3 に答える
2156 参照

django - django-channels のデバッグ

次のプロジェクトに django-channels を組み込もうとしていますが、デバッグに問題があります。pycharms デバッガーと pdb も試しましたが、ブレークポイントにヒットしません。