POST-запрос Locust с файлом .xlsx к конечной точке Flask возвращает ошибку 503Python

Программы на Python
Ответить
Anonymous
 POST-запрос Locust с файлом .xlsx к конечной точке Flask возвращает ошибку 503

Сообщение Anonymous »

Я тестирую свое приложение Python Flask с помощью Locust для нагрузочного тестирования запроса POST с вложенным файлом .xlsx. Однако я постоянно сталкиваюсь с ошибкой 503 Service Unavailable.
Эта проблема возникает ТОЛЬКО при использовании Locust. Когда я вручную тестирую тот же API, он работает нормально.
Файл Locust
@task
def upload_statics_file(self):
file_path = "some_file_path.xlsx"

try:
with open(file_path, "rb") as file_to_upload:
files = {'file': file_to_upload}

print("Starting file upload test...")
with self.client.post("/api/statics_file_upload", files=files, catch_response=True) as response:
print(f"Request made to: /api/statics_file_upload")
print(f"Response Status Code: {response.status_code}") # Log status code
print(f"Response Headers: {response.headers}") # Log headers

try:
response_data = response.json() # Parse JSON
print(f"Response JSON: {response_data}")
except Exception as e:
print(f"Failed to parse response as JSON. Response Text: {response.text}")

if response.status_code == 200:
response.success()
print("File uploaded successfully!")
else:
response_text = response.text or "No response body received (empty response)"
print(f"Failed to upload file: {response_text}")
response.failure(
f"Failed to upload file. Status code: {response.status_code}, Response: {response_text}"
)
except FileNotFoundError:
print(f"File not found at: {file_path}")

Проблема

Каждый раз, когда я запускаю тест на Locust, я получаю следующее:
Starting file upload test...
Request made to: /api/statics_file_upload
Response Status Code: 503
Response Headers: {'Content-Length': '0', 'Date': 'Sun, 16 Nov 2025 12:23:31 GMT', 'Connection': 'close'}
Failed to parse response as JSON. Response Text:
Failed to upload file: No response body received (empty response)

Пробовал следующие исправления.

ChatGPT предположил, что проблема связана с моим URL-адресом, но это неправда.
Двойная косая черта и неверный URL-адрес — это не проблема.
Также пробовал удалить декоратор @requiresauth, но тоже не помогло.
URL хоста (URL рабочей станции Google):
https://3000-abcdef-xyz-abc.cluster-xyz ... ations.dev
Код конечной точки:
@upload_routes.route("/api/statics_file_upload", methods=["POST"], endpoint="upload_statics_file")
@requires_auth
def upload_statics_file():
file = request.files.get("file")
#further logic ...


Подробнее здесь: https://stackoverflow.com/questions/798 ... -503-error
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»