Код: Выделить всё
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
Терминал VSC
p>
То же самое происходит с почтальоном с URL-адресом локального сервера, если я использую URL-адрес devops для почтальона, а именно этого. https://dev.azure.com/preet442727/test/ ... ersion=7.1
он работает и каждый раз дает мне правильный ответ, но не локальный сервер
Подробнее здесь: https://stackoverflow.com/questions/792 ... thon-flask
Мобильная версия