-1
フラスコの質問でここに戻ってください。私は初心者であり、レッドからいくつか素晴らしいことを学ぶ(コードを正当化する方法)。 ここでは、フラスコからローカルにホストしようとしているAPIから特定の情報を取得したコードを示します。Flaskの内部サーバーエラー
from flask import Flask, render_template
import httplib
import json
app = Flask(__name__)
@app.route('/')
def index():
connection = httplib.HTTPConnection('api.football-data.org')
headers = {'X-Auth-Token': 'this is my api token here', 'X-Response-Control': 'minified'}
connection.request('GET', '/v1/competitions/426/leagueTable', None, headers)
response = json.loads(connection.getresponse().read().decode())
return response
if __name__ == '__main__':
app.run()
、私は127.0.0.1:5000を実行すると、私が手:
Internal Server Error
The server encountered an internal error and was unable to complete your request. Either the server is overloaded or there is an error in the application.
ここでは、私のサーバーは、私に言っているものです!
MacBooks-MBP:Football macbookpro13$ python Footy_Web.py
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
[2016-12-20 13:58:17,493] ERROR in app: Exception on/[GET]
Traceback (most recent call last):
File "/Library/Python/2.7/site-packages/flask/app.py", line 1988, in wsgi_app
response = self.full_dispatch_request()
File "/Library/Python/2.7/site-packages/flask/app.py", line 1642, in full_dispatch_request
response = self.make_response(rv)
File "/Library/Python/2.7/site-packages/flask/app.py", line 1746, in make_response
rv = self.response_class.force_type(rv, request.environ)
File "/Library/Python/2.7/site-packages/werkzeug/wrappers.py", line 847, in force_type
response = BaseResponse(*_run_wsgi_app(response, environ))
File "/Library/Python/2.7/site-packages/werkzeug/wrappers.py", line 57, in _run_wsgi_app
return _run_wsgi_app(*args)
File "/Library/Python/2.7/site-packages/werkzeug/test.py", line 871, in run_wsgi_app
app_rv = app(environ, start_response)
TypeError: 'dict' object is not callable
127.0.0.1 - - [20/Dec/2016 13:58:17] "GET/HTTP/1.1" 500 -
このコードは、フラスコフレームワークの外で動作する必要があります。
私は(代わりしかし、ジャンゴ)フラスコに精通していないです。私の推測では、あなたはdict型のオブジェクト '応答'を返そうとしています。しかし、HTTPレスポンスを送信する必要があります。あなたは私に結果を与えたFlask API *への応答としてdictを送る方法についてgoogleかもしれません:[FlaskのWebフレームワークを使ってjsonを返す方法](http://stackoverflow.com/a/13089975/2063361) –