2011-03-06 18 views
1

SubmitHandlerget提交url這個重定向有什麼問題? (谷歌應用程序引擎 - Python)的

url = self.request.get("url").rstrip().lstrip() 

,並檢查它的長度爲零,如果是零我重定向到/urlparseerror

if len(url) == 0: 
     logging.info("""***len(url) is --zero--: %s***""" % len(url)) 
     self.redirect("/urlparseerror") 

但某些原因重定向不被執行。據logging.infolen(url)爲零:

***len(url) is --zero--: 0*** 

我在做什麼錯?

+0

url = self.request.get(「url」)。strip()它相當於l和r帶。 – topless 2011-03-06 18:45:52

+0

好的,謝謝。但是,如何停止執行重定向? – Zeynel 2011-03-06 18:47:36

+0

這只是一個觀察嘗試單引號請求得到像: url = self.request.get('url'),爲了執行重定向你必須有一個零url,檢查你是否傳遞任何字符串作爲長度> 0的網址 – topless 2011-03-06 18:48:50

回答

6

redirect()將不會結束您的其他代碼的執行。因此,如果在發佈代碼段後,您的代碼將繼續返回其他類型的響應,您的重定向將被忽略。如果是這種情況,請粘貼return以使響應返回。

if len(url) == 0: 
    logging.info("""***len(url) is --zero--: %s***""" % len(url)) 
    self.redirect("/urlparseerror") 
    return 
+0

謝謝!這是問題所在。 – Zeynel 2011-03-06 19:24:57