Python Forum

Full Version: Flask request object None
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
I am trying to set up a simple Flash app to receive sensor data from a microcontroller.

Simplified code:

from flask import Flask, request, jsonify, abort, render_template

from LogFactory import log
from Database import Database
from ApiHandler import ApiHandler

app = Flask(__name__)
wsgi_app = app.wsgi_app

api = ApiHandler()

@app.route('/api/record', methods=['POST'])
def record_data():
    [b]log.info(request)[/b]
    return api.RecordSensorData(request)

if __name__ == '__main__':
    app.run('0.0.0.0', 5555, debug=True)
When I POST data to this endpoint with the Microcontroller on the same network it works fine and request.json contains the correct JSON structure. However when I connect the microcontroller through a WiFI extender I am getting some odd results, specifically request is None.

Output:
* Serving Flask app "IotServer" (lazy loading) * Environment: development * Debug mode: on 2021-03-11 12:17:28,047 - INFO - * Running on http://0.0.0.0:5555/ (Press CTRL+C to quit) 2021-03-11 12:17:28,047 - INFO - * Restarting with stat 2021-03-11 12:17:28,174 - WARNING - * Debugger is active! 2021-03-11 12:17:28,175 - INFO - * Debugger PIN: 108-630-478 2021-03-11 12:18:10,578 - INFO - <Request 'http://192.168.0.23:5555/api/record' [POST]> 2021-03-11 12:18:10,579 - INFO - API /api/record called 2021-03-11 12:18:10,579 - INFO - [b]None[/b] 2021-03-11 12:18:10,579 - ERROR - 400 Bad Request: The browser (or proxy) sent a request that this server could not understand. 2021-03-11 12:18:10,580 - INFO - 192.168.0.154 - - [11/Mar/2021 12:18:10] "POST /api/record HTTP/1.1" 500 -
Is there any way of seeing the complete raw post before flask tries to process it? Or anyone have any idea why this could be?

Thanks.