2010-05-04 11 views
23

मैं कैसे अजगर के साथ वर्तमान URL मिलेगा में वर्तमान URL जाओ,अजगर

मैं तो मैं यह जाँच कर सकते हैं क्वेरी स्ट्रिंग के लिए जैसे

requested_url = "URL_HERE" 

url = urlparse(requested_url) 

if url[4]: 
    params = dict([part.split('=') for part in url[4].split('&')]) 

भी इस में चल रहा है वर्तमान URL हड़पने के लिए की जरूरत है गूगल एप इंजन

उत्तर

51

इस प्रयास करें:

self.request.url 

इसके अलावा, अगर तुम सिर्फ क्वेरी स्ट्रिंग की जरूरत है, इस काम करेगा:

self.request.query_string 

और, अंत में, यदि आप क्वेरी स्ट्रिंग चर कि आप देख रहे हैं पता है, तुम यह कर सकते हैं:

self.request.get("name-of-querystring-variable") 
+0

self.request.query_string बहुत अच्छा काम करता है – Alex

0

प्रयास करें इस

import os 
url = os.environ['HTTP_HOST'] 
+1

यह किसी भी प्रकार की क्वेरी स्ट्रिंग की अनदेखी करने के लिए प्रकट होता है, क्योंकि यह केवल मेजबान यूआरएल हथियाने है: ParseResult (योजना = 'localhost', netloc = '', path = '8080', params = '', query = '', fragment = '') – Alex

3
गूगल के माध्यम से इस खोजने किसी के लिए

,

मैं इसे समझ से बाहर,

आप का उपयोग कर अपने मौजूदा अनुरोध पर क्वेरी स्ट्रिंग प्राप्त कर सकते हैं:

url_get = self.request.GET 

जो आपकी क्वेरी स्ट्रिंग की एक UnicodeMultiDict है!

+0

हां, आम तौर पर आप टूल्स का उपयोग करना चाहते हैं आपके ढांचे द्वारा प्रदान किया गया है और मैन्युअल रूप से यूआरएल पार्स नहीं है; यह एक हल समस्या है। – geoffspear

0

मैं अन्य उत्तर काम करने के लिए क्या मेरे लिए काम किया है नहीं मिल सका, लेकिन यहाँ:

url = os.environ['HTTP_HOST'] 
    uri = os.environ['REQUEST_URI'] 
    return url + uri