Не могу получить обратный ответ от flask сервера для обработки в js коде

У меня есть JS реализация кода запросов к серверу:

async function userMapState(latitude, longitude, zoom, update) {
requestData = {
    update: update,
    mapview: {
        center: {
            lat: latitude,
            lng: longitude
        },
        zoom: zoom
    }
};

const response = await fetch('/api/mapview/userSet', {
    method: 'POST',
    headers: {
        'Content-Type': 'application/json'
    },
    body: JSON.stringify(requestData)
})

const responseData = await response.json();
if(responseData.map_data) {
    console.log(responseData);
}

А также отдельный файл flask_app.py, в котором выбирается конкретный метод для выполнения на сервере:

@app.route("/api/mapview/<task>",methods=["POST","GET"])
def mapview(task):
    if flask.request.method == "GET":
        if task == "get": return tasks.get_map_data()
    elif flask.request.method == "POST":
        if task == "set": return tasks.set_map_data(flask.request.json)
        if task == "userSet": return tasks.user_set_map(flask.request.json)

    flask.abort(404)

Ну и сами методы лежат в файле flask_tasks.py:

def user_set_map(map_data) -> Response:
    upd_flag = map_data.get("update", False)
    map_data = map_data.get("mapview")
    
    if upd_flag:
        with open('map_data.json', 'w') as file:
            json.dump(map_data, file)
        return jsonify({
            "message": "Map position set, map_data update", 
            "map_data": map_data
        }), 200
    else:
        with open('map_data.json', 'w') as file:
            json.dump(map_data, file)
        return jsonify({
            "message": "Map data update",
        }), 200

Суть в том, что я отправляю данные с координатами в формате JSON, на сервере эта информация обрабатывается и в зависимости от true/false, дальше должна идти отправка данных обратно, как тут например:

const response = await fetch('/api/mapview/userSet', {
        method: 'POST',
        headers: {
            'Content-Type': 'application/json'
        },
        body: JSON.stringify(requestData)
    })

    const responseData = await response.json();
    if(responseData.map_data) {
        console.log(responseData);
    }

По идее, данные должны вернуться, а responseData принять их содержимое, но этого не происходит. Я просто хочу вывести данные в консоль браузера, но ничего не происходит. В чем может быть проблема?


Ответы (0 шт):