2010-09-23 175 views
0

嗨我有一個應用程序,可以正常工作,當我從瀏覽器中鍵入網址。它的工作原理類似於http://mysite/service?id=1234,如果我在瀏覽器上鍵入它可以正常工作,但是我們有另一個接受來自移動電話參數的服務,此服務會調用相同的url並將參數發佈到它上面。如何從urls.py獲取請求參數?

我知道它得到了儘可能urls.py因爲我已經把一個日誌記錄機制,但它並不完全進入視圖,我也在視圖中的日誌記錄位。

所以這就是爲什麼我想要得到urls.py收到的確切的請求路徑,以便我能夠弄清楚服務是否正在搞砸。

這可能嗎?

回答

2

當你說,你意味着,或者您使用隨機這個關鍵,非常具體的動詞?因爲如果請求確實是一個,也將極有可能沒有?id=1234作爲URL的一部分 - 的參數,而不是將走在後的身體; URL的查詢字符串部分通常僅用於GET請求,不是POST請求。

話又說回來,它很可能你只是用非常具體的動詞隨機的,因爲你做「調用的URL」這是保證無稽之談(一個「呼叫」一功能:有在網絡的運作中,沒有任何「調用URL」的概念; - )...但是我給你帶來了懷疑的好處,因爲如果你正確使用技術術語,使用POST實際上完全可以解釋爲什麼顯然你期望存在的URL的查詢字符串部分可能完全不存在(將參數信息轉換爲後主體!)。

+1

+1。優秀的問題理解fu。 – 2010-09-23 04:13:33

+0

嗨,感謝您的回覆,簡單地說,我只是想從urls.py中訪問HttpRequest.REQUEST,這樣我就可以使用querystring,GET或甚至POST的基本URL來獲取URL。 – Michael 2010-09-23 04:23:24

+0

@Michael:如果您正在嘗試排除爲什麼請求沒有將其顯示到視圖中,則可以在此處發佈您的網址配置。另外,你可以通過編寫一個catch-all視圖來進行調試(在你的url中匹配「^ $」,將它添加到配置的頂部),它僅僅記錄整個請求。 – 2010-09-23 04:28:51

0

從urls.py來看:如果是打不認爲是WS一個,你有沒有試過

(r'^ws$','www.views.ws'), 

你忘了,包括網址,你與測試,所以很難說。

如果你使用的是unixy系統,我推薦使用kodos來測試一個urlpattern對一個實際url的正則表達式。