0
我正在嘗試按照它們在Django中收到的確切順序獲取POST數據參數。如何在Django中以正確的順序獲取HTTP POST參數?
我有這個在我的views.py
:
@require_POST
@csrf_exempt
def paypal_ipn_listener(request):
print request.POST
print request.body
在request.POST
的數據是QueryDict
是無序的,因此不適合我的需要。
試圖訪問request.body
拋出異常:
RawPostDataException: You cannot access body after reading from request's data stream
我想這發生異常,因爲我@require_POST
或@csrf_exempt
裝飾這或許調用一些中間件讀取POST數據流。
無論如何,我的問題是如何獲得HTTP請求POST數據的確切順序?
我需要保持訂單滿足PayPal IPN implementation requirements。
**更新**
我結束了手動解析request.body
因爲沒有更好的解決辦法。
因爲你訪問'request.POST'你得到這個錯誤*第一個*。如果您刪除了該行,則不會收到錯誤消息。 –
@DanielRoseman好主意,但我刪除了第一印,我仍然得到相同的錯誤。 –
@DanielRoseman經過進一步的測試,似乎是這樣。作爲回答發佈,我會接受它。 –