У меня есть Flask API, где я возвращаю данные, используя psycopg2 и SQL-запросы. Конечные точки работают, как и ожидалось, локально, возвращая данные вместе с HTTP-статусом 200, но при работе он возвращает HTTP-статус 204, даже если в таблице есть записи. Если я захожу на сервер и запускаю SQL-запрос как пользователь базы данных, он возвращает записи.
Это одна из моих конечных точек:
# Return all products
@products_api.route('/v1/resources/products/all', methods=['GET'])
def api_all():
conn = databaseConnection()
cur = conn.cursor(cursor_factory=psycopg2.extras.RealDictCursor)
sql_all_products = cur.execute('SELECT a.*, b.id as userID, b.username, b.firstname, b.surname, b.email, b.avatar_url, c.category_id, c.category_name, c.parent_id FROM products a INNER JOIN users b ON a.user_id = b.id INNER JOIN product_categories c ON a.product_category_id = c.category_id ORDER BY a.id, b.id;')
all_products = cur.fetchall()
cur.close()
conn.close()
if all_products:
return Common.custom_response(all_products, 200)
else:
return Common.custom_response({'message': 'No Content'}, 204)
Я не уверен, что этопроблема с моим кодом или с конфигурацией сервера. Я пытался использовать разные фабрики курсоров, но проблема сохраняется. Есть идеи, что я сделал не так?