Tôi đang làm việc với tập lệnh Python để quản lý các dịch vụ ArcGIS Server (xuất bản dịch vụ mới, cập nhật dịch vụ hiện có, xóa dịch vụ cũ, v.v.) theo từng đợt trên nhiều môi trường (ví dụ: dev, test và sản xuất) và các phiên bản (2+ cho mỗi môi trường).
Để xuất bản dịch vụ, bạn có thể sử dụng các tệp kết nối ArcPy và AGS, nhưng để làm bất cứ điều gì ngoài điều đó (ví dụ: liệt kê các dịch vụ hiện có, bắt đầu / dừng / xóa dịch vụ), bạn cần sử dụng API REST của AGS Admin , sử dụng xác thực dựa trên mã thông báo, và để nhận được mã thông báo, bạn cần gửi tên và mật khẩu của người dùng.
Việc phải chỉ định URL máy chủ, tên người dùng và mật khẩu mỗi lần sẽ gây nhàm chán cho người dùng, đặc biệt nếu họ đang làm việc với nhiều phiên bản AGS cùng một lúc, như tập lệnh của tôi. Tôi rất thích nếu họ chỉ có thể sử dụng các tệp kết nối AGS có sẵn của họ thay vào đó, mà họ cần để xuất bản bất kể.
Có cách nào để lấy thông tin kết nối (ví dụ: URL máy chủ, tên người dùng, mật khẩu) từ .ags
tệp kết nối AGS ( ) theo chương trình - lý tưởng với Python không? arcpy.Describe
coi chúng là những tập tin ngu ngốc và không thể làm gì với chúng.
Nếu không có cách nào để làm điều đó thì tôi cho rằng tôi sẽ phải yêu cầu một bước cấu hình bổ sung để tạo và lưu trữ mã thông báo cục bộ trong một thời gian dài vì nó sẽ quá cồng kềnh khi phải nhắc người dùng thông tin đăng nhập cho mỗi phiên bản AGS mỗi lần họ sử dụng kịch bản.