0

基本的に私がやっていることは、Web サーバーに接続し、いくつかの計算を実行し、結果の値を返す必要があるデスクトップ アプリケーションを構築することです。計算は時間の経過とともに変化し、ある程度のセキュリティを維持する必要もあります。そのため、デスクトップ アプリケーションにコーディングするだけではありません。

問題は、認証されたユーザーのみがサーバーへのアクセスを許可される必要があることです。したがって、私が探しているのは、デスクトップ アプリケーションから Django にログインする方法です (つまり、デスクトップ アプリケーションは、ユーザー名とパスワードを要求するウィンドウをポップアップし、認証に使用される Django サイトに送信されます)。ユーザーは、有効な場合、計算の結果を返します. セッションとしても機能する必要があります (ユーザーは最初にパスワードを入力し、デスクトップ アプリケーションを閉じるまで再度ログインする必要はありません。複数の計算が実行された場合でも)。

これにはセッションキーを使用する必要があると思います。おそらく、ここで説明されている RemoteUserMiddleware を使用する必要がありますが、これをコーディングする限り、どこから始めればよいかわかりません。正しい方向への提案や指針をいただければ幸いです。

ありがとう -モラグ

PS これが重要な場合、デスクトップ アプリケーションは VB.NET で記述されています。

4

1 に答える 1

1

面白い。私はこのようなことをしたことがありませんが、基本的な考え方は次のとおりです。

1) Django セッションをよく見てください。基本的な考え方は次のとおりです。

  • django auth フレームワーク ログイン サービスを使用してログインする
  • Django がセッションを作成し、難しいことはすべて処理します
  • sessionidDjango は、 Cookieを含む HttpResponse を返します。あなた自身を識別し、「セッション内で操作する」ために、次の要求とと​​もにこれを返送する必要があります。
  • django auth logout サービスを使用してログアウトすると、Django によってセッションが破棄されます。

2) さて、残りは比較的簡単です。

  • ログイン/ログアウト+計算サービス用の適切なURLを使用してdjango urls.pyをセットアップします
  • 適切なパラメータを設定して、ログイン サービスへのポスト リクエストを実行します。
  • 応答をキャッチし、「sessionid」Cookie を抽出してどこかに保存します
  • 後続の各リクエストで、sessionid

これで始められるはずです。幸運を!

于 2012-10-05T21:14:26.380 に答える