リクエストにいくつかのgetパラメータを付けて、外部URLへのDjangoビューのリダイレクトを作成しようとしています。周りを見回して試してみた後、私は道のブロックを打ったようです。POSTパラメータを使用した外部djangoリダイレクト
だから、私の見解は、これは私の知る限り取得することができたようです。この
def view(request):
data = get.data(request)
if something in data:
return HttpResponseRedirect('example.com')
ようになります。私はあなたが要求URLにこのようないくつかのGETパラメータを指定することができることを知っている:データの一部は敏感であるため
...
return HttpResponseRedirect('example.com?name=smith&color=brown')
は、しかし、私はそれがURLで終わるしたくありません。外部URLなので、viewパラメータを受け入れるredirect()ショートカットを使用することはできません。そのような仕事をどのように達成するのですか?
編集
いくつかは、より多くの周りを探して、IRCで少しおしゃべりしている行われた後、それは支払い情報を含む、離れてユーザーからのGETパラメータを維持するために、私は何をすべきと思われる、とあります代わりに投稿として送信してください。私はあなたもJSを使うことでそれをやることができるはずだと言われました。おそらくjQueryです。問題は今でももう少し複雑ですが、依然として残っています。どのように1つはジャンボのポストリダイレクトを作成するjavascriptの助けを借りて行くだろうか?
第二編集
は、私が誤解されているように思えます。 ThanxはリダイレクトプロトコルDRでこれをクリアします。この問題を解決するためにリダイレクトを使用しようとして間違った道を歩んできたように見えます。
これは、リダイレクトを回避する巧妙な方法です。しかし、これはjavascriptに依存しているので、やはり優雅な劣化が必要です。私は実際にどのようにスムーズになるのだろう、jsの投稿を行うことができる前にページを読み込まなければならないのだろうか。 – googletorp
はい、この解決策はJavaScriptがブラウザで有効になっているかどうかに依存しますが、このページで正しく実行する必要はありません。あなたもあなたの視点に到達する前にJavaScriptをチェックする必要があります。したがって、それが有効になっていないと、ユーザーはこれまでのところさえ得られません。ページの読み込みは、ビューがどのくらい速く戻ってくるか、結果HTMLがどれだけ大きいかによって異なります。あなたが唯一のカップルのフィールドを持っている場合私は推測しているページのレンダリングは、秒未満の時間になるだろう。リダイレクト自体も速いので、このソリューションのユーザーエクスペリエンスは通常のリダイレクトと非常によく似ています。 –
しかし、そのようなソリューションのセキュリティの意味は何ですか?私は支払いゲートウェイにPOSTパラメータを設定したい。私のauth_idなどの機密データをユーザーに安全に送信していますか?それ以外の方法はありませんか? – sudshekhar