我想創建一個Django視圖中的重定向到一個外部URL與一些獲取參數附加到請求。在做了一些環顧四周的嘗試之後,似乎我遇到了一個障礙。外部django重定向POST參數
所以我的觀點看起來是這樣的
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,因此我無法使用接受視圖參數的redirect()快捷方式。所以祈禱告訴,如何完成這樣的任務?
編輯
已經做了一段更環顧四周,並聊起在IRC了一下,似乎是我應該做的,以保持GET參數從用戶望而卻步,包含付款信息,是請將它們作爲帖子發送。我被告知你應該可以通過使用一些JS,也可以使用jQuery。現在問題仍然存在,但現在有點複雜。怎樣才能在javascript的幫助下在django中創建帖子重定向?
第二編輯
好像我一直在誤導。 Thanx用重定向協議DR清除它。看起來我嘗試使用重定向來解決這個問題一直走錯了路。
這是一種避免重定向的巧妙方法。然而,這是JavaScript的依賴,所以需要做一個優雅的退化也。我不知道這會在實踐中有多平穩,但必須在能夠完成js帖子之前加載頁面。 – googletorp 2009-08-28 15:02:41
是的,這個解決方案取決於瀏覽器中啓用的JavaScript,但這並不意味着您需要在此頁面上正確執行。在你看到你的視圖之前,你應該檢查JavaScript。所以,如果它沒有啓用,那麼用戶甚至不會得到這麼多。至於頁面的加載,取決於視圖返回的速度以及HTML的結果有多大。如果你只有幾個字段,那麼我猜測的頁面渲染將在亞秒級。重定向本身也很快,所以這種解決方案的用戶體驗與正常的重定向非常相似。 – 2009-08-28 19:06:34
但是這種解決方案的安全含義是什麼?我想POST參數到付款網關。是否將敏感數據(如我的auth_id等)發送給用戶安全?沒有其他方法嗎? – sudshekhar 2016-04-09 17:08:34