0
我已經定義了multplie服務的URL,所有這些將執行相同的代碼。Python瓶自動重定向消息
@service.route('/get_info/env=<path:env>/starttime=<int:starttime>/endtime=<int:endtime>/entire=<entire>/over=<over>/stage=<stage>', defaults={'name': None}, strict_slashes=False)
@service.route('/get_info/dir=<path:dir>/starttime=<int:starttime>/endtime=<int:endtime>/entire=<entire>/over=<over>', defaults={'stage': 'ABC', 'name': None}, strict_slashes=False)
@servicelog.operation('GetInfo')
def get_deployment_info(env, starttime, endtime, finished, stage, fleetwide, hostname):
global _misc
try:
log.info("Dir: %s, Starttime: %d, Endtime: %d, name: %s, finished:%s, Stage:%s, Fleetwide: %s", dir, starttime, endtime, name,over, stage, entire)
result = obj.get_info(dir, starttime, endtime, entire, over, stage, name)
如果我要調用與以下參數的服務,它按預期工作:
http://<endpoint>/get_info/dir=home/user/test/starttime=1470439200/endtime=1470856027/entire=true/over=true
但是,如果我得到調用與以下參數的服務,得到了一個重新直接消息:
http://<endpoint>/get_info/dir=home/user/test/starttime=1470439200/endtime=1470856027/entire=true/over=true/stage=ABC
我得到的錯誤是
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<title>Redirecting...</title>
<h1>Redirecting...</h1>
<p>You should be redirected automatically to target URL: <a href="http://endpoint/get_info/dir%3Dhome/user/test/starttime%3D1470439200/endtime%3D1470856027/entire%3Dtrue/over%3Dtrue">http://endpoint/get_info/dir%3Dhome/user/test/starttime%3D1470439200/endtime%3D1470856027/entire%3Dtrue/over%3Dtrue</a>. If not click the link.%
我在這裏做了什麼不正確的事嗎?由於我沒有定義任何類型的重定向,我並不期待這樣的消息。它應該執行該方法,而不管使用哪個url。
感謝您的回覆。有更多的挖掘周圍。如果我通過'stage = ABC',會發生這種情況,並且我爲第二個替代url定義了階段的默認值爲ABC。不知道爲什麼它會嘗試讀取第二個備用網址的默認值。它適用於所有其他值。 – learningMyWayThru