I have used flask before with no problem.  Now I am getting very mysterious 
results, which I have reduced to a very small test case.

Here is a flask server, in Python 3, which waits for a message on port 8002 
(the port is open):


from flask import Flask, Response
import json
app = Flask(__name__)
@app.route('/jay', methods=['PUT'])
def analyze():
    print("hello")
    resp = Response(json.dumps({'status':'Good'}),  status=200,  
mimetype='application/json')
    return resp
if __name__ == '__main__':
    app.run(debug=True, host='0.0.0.0', port=8002)


And here is the simple client:


import requests
r = requests.put('http://13.57.96.64:8002/jay', data='{ "test": "Jay" }', 
headers={"Content-Type": "application/json"}, verify=False)
print(r)

I bring up the server, and as expected, it outputs:

 * Running on http://0.0.0.0:8002/ (Press CTRL+C to quit)
 * Restarting with stat
 * Debugger is active!
 * Debugger PIN: 292-073-960

and waits.  Then I run the client and see:

<Response [200]>

So the connection is fine.  But the server does not print to the terminal.  (In 
my actual application, it needs to do much more, but does nothing.)  Without 
the server running, the client fails to make a connection, as expected.  So the 
only effect of the server is to create the REST endpoint -- but it does not 
execute the logic that a message is supposed to trigger.

Hopefully, another pair of eyes will see the problem.  Thanks.

Jay

-- 
https://mail.python.org/mailman/listinfo/python-list

Reply via email to