2017-09-06 5 views
0

Ich habe eine einfache REST-API in Python mit Flask erstellt. Der Code für diesen Dienst ist:Meine Python-Rest-API hängt an CURL

from flask import Flask, request, Response, jsonify 
from flask_restful import Resource, Api 

app = Flask(__name__) 
api = Api(app) 

class Ping(Resource): 
    def get(self): 
     resp = jsonify({"response": 'Pong!'}) 
     resp.status_code = 200 
     return resp 

api.add_resource(Ping, '/ping') 

if __name__ == '__main__': 
    app.run() 

ich starten Sie den Dienst mit: $python minimal-rest.py

ich curl den Ping-Endpunkt mit: $ curl -i http://127.0.0.1:5000/ping und die Ergebnisse sind genau das, was ich erwarte.

Ich traf dann den gleichen Endpunkt von einem Browser, und wieder sind die Ergebnisse wie erwartet.

Wenn ich einen anderen Curl-Befehl ausstelle, hängt die Konsole einfach. Wenn ich dann aber meinen Browser aktualisiere, reagiert er ebenso wie die Konsole, die den Hang Curl ausgeführt hat.

Irgendwelche Ideen?

+0

Sie Abrufen der Header bereits. Es Keep Alive eingestellt? –

+1

Die Summe meiner Kenntnisse über Keep am Leben könnte passen in einen Fingerhut mit Platz zu sparen. :) Alles, was ich mache, ist in der ursprünglichen Frage enthalten. Gibt es mehr, was ich brauche? –

+0

Lassen Sie mich es auf andere Weise fragen: Was ist das volle Ergebnis Ihres 'curl'-Anrufs? –

Antwort

0

Versuchen Sie, die Ping Klassenwechsel:

class Ping(Resource): 
    def get(self): 
     resp = {"response": 'Pong!'} 
     return resp, 200