簡體   English   中英

500內部服務器錯誤:Python Bottle API

[英]500 Internal Server Error: Python Bottle API

我正在使用Python開發一個簡單的API-Bottle。

這就是我使用路由啟用API HTTP請求的方式:

@route('/expand')
def expand(url = ""):
    url = request.query.get('url', '')
    if url == "":
        return {"success" : False,
            "start_url" : url,
            "final_url" : "",
            "url_list" : []
            }
    url_list = expandURL(url)
    return {"success" : True,
            "start_url" : url,
            "final_url" : url_list[-1],
            "url_list" : url_list
            }

這是我得到的錯誤:

2014-09-24 18:50:24,930 :Traceback (most recent call last):
2014-09-24 18:50:24,933 :  File "/usr/local/lib/python2.7/dist-packages/bottle.py", line 764, in _handle
2014-09-24 18:50:24,933 :    return route.call(**args)
2014-09-24 18:50:24,933 :  File "/usr/local/lib/python2.7/dist-packages/bottle.py", line 1575, in wrapper
2014-09-24 18:50:24,933 :    rv = callback(*a, **ka)
2014-09-24 18:50:24,933 :  File "/home/sahildua2305/mysite/bottle_app.py", line 41, in expand
2014-09-24 18:50:24,933 :    url_list = expandURL(url)
2014-09-24 18:50:24,933 :  File "/home/sahildua2305/mysite/bottle_app.py", line 9, in expandURL
2014-09-24 18:50:24,933 :    return unshorten_me(url, urls)
2014-09-24 18:50:24,933 :  File "/home/sahildua2305/mysite/bottle_app.py", line 14, in unshorten_me
2014-09-24 18:50:24,933 :    h.request('HEAD', parsed.path)
2014-09-24 18:50:24,933 :  File "/usr/lib/python2.7/httplib.py", line 973, in request
2014-09-24 18:50:24,933 :    self._send_request(method, url, body, headers)
2014-09-24 18:50:24,934 :  File "/usr/lib/python2.7/httplib.py", line 1007, in _send_request
2014-09-24 18:50:24,934 :    self.endheaders(body)
2014-09-24 18:50:24,934 :  File "/usr/lib/python2.7/httplib.py", line 969, in endheaders
2014-09-24 18:50:24,934 :    self._send_output(message_body)
2014-09-24 18:50:24,934 :  File "/usr/lib/python2.7/httplib.py", line 829, in _send_output
2014-09-24 18:50:24,934 :    self.send(msg)
2014-09-24 18:50:24,934 :  File "/usr/lib/python2.7/httplib.py", line 791, in send
2014-09-24 18:50:24,934 :    self.connect()
2014-09-24 18:50:24,934 :  File "/usr/lib/python2.7/httplib.py", line 772, in connect
2014-09-24 18:50:24,934 :    self.timeout, self.source_address)
2014-09-24 18:50:24,934 :  File "/usr/lib/python2.7/socket.py", line 571, in create_connection
2014-09-24 18:50:24,934 :    raise err
2014-09-24 18:50:24,934 :error: [Errno 111] Connection refused

這就是我通過將params={'url':'http://tuq.in/sahil'}發送到鏈接[ https://sahildua2305.pythonanywhere.com/expand]來測試調用的params={'url':'http://tuq.in/sahil'} ,該鏈接會產生500內部錯誤。 發送不帶任何參數的相同請求不會出錯!

請幫助我糾正錯誤。。在此先感謝。

您可能有一個免費帳戶,並且他們不允許除白名單站點之外的任何站點訪問Internet。

您僅在提供參數時收到錯誤的原因是,僅當有參數時才調用發出請求的代碼(在expandURL中)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM