Azure DevOps API выдает случайные 500 ошибок – колба PythonPython

Программы на Python
Ответить
Anonymous
 Azure DevOps API выдает случайные 500 ошибок – колба Python

Сообщение Anonymous »

Код: Выделить всё

from flask_cors import CORS
from azure.devops.connection import Connection
from msrest.authentication import BasicAuthentication
from azure.devops.v7_1.work_item_tracking.models import Wiql

app = Flask(__name__)
CORS(app)

ORGANIZATION = "preet442727"
PROJECT = "test"
PAT = ""

credentials = BasicAuthentication('', PAT)
connection = Connection(base_url=f"https://dev.azure.com/{ORGANIZATION}", creds=credentials)

wit_client = connection.clients.get_work_item_tracking_client()

@app.route("/work-items", methods=["GET"])
def get_work_items():

work_item_id = 1

try:
# Get work item by ID
work_item = wit_client.get_work_item(work_item_id)
return jsonify(work_item.as_dict())
except Exception as e:
return jsonify({"error": "Failed to fetch work item", "details": str(e)}), 500

@app.route("/all-work-items", methods=["POST"])
def get_all_work_items():
# Create the WIQL query to retrieve work items
wiql_query = Wiql(
query="""
SELECT [System.Id], [System.WorkItemType], [System.State]
FROM WorkItems
WHERE [System.TeamProject] = 'test'
ORDER BY [System.ChangedDate] DESC
"""
)

try:
result = wit_client.query_by_wiql(wiql_query)
work_items = result.work_items

detailed_work_items = []
for item in work_items:
work_item_id = item.id
work_item = wit_client.get_work_item(work_item_id)
detailed_work_items.append(work_item.as_dict())

return jsonify({"workItems": detailed_work_items})
except Exception as e:
return jsonify({"error": "Failed to fetch work items", "details": str(e)}), 500

@app.route("/all-work-items", methods=["GET"])
def get_work_item():
return get_all_work_items()

if __name__ == "__main__":
app.run(debug=True)
Оба запроса на получение случайным образом выдают ошибку 500, иногда это работает и дает правильный ответ, в других случаях выдает эту ошибку.
ошибка 500
Терминал VSC
p>
То же самое происходит с почтальоном с URL-адресом локального сервера, если я использую URL-адрес devops для почтальона, а именно этого. https://dev.azure.com/preet442727/test/ ... ersion=7.1
он работает и каждый раз дает мне правильный ответ, но не локальный сервер


Подробнее здесь: https://stackoverflow.com/questions/792 ... thon-flask
Ответить

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

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

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

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

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