Azure DevOps için REST API örnekleri
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
Bu makaledeki örneklerin çoğu kişisel erişim belirteçlerini (PAT) kullanır. PAT'ler kimlik doğrulaması için küçük bir örnek. Microsoft Kimlik Doğrulama Kitaplığı, OAuth ve Oturum belirteçleri gibi başka birçok kimlik doğrulama mekanizması vardır. Senaryonuz için en uygun olanı ölçmeye yönelik daha fazla bilgi için bkz . Kimlik doğrulama kılavuzu.
Daha fazla bilgi için bkz . Azure DevOps Services REST API Başvurusu ve REST API'lerini kullanmaya başlama.
Kişisel erişim belirteçleri
REST API'lerini veya .NET Kitaplıklarını kullanırken Azure DevOps ile kimlik doğrulaması.
Bu örnekleri kullanmaya başlayın ve pat oluşturun.
İpucu
PAT'ler parola gibidir. Onları gizli tutun. PAT'niz oluşturulduktan sonra bunları güvenli bir konuma kaydettiğinizden emin olun.
PAT'yi bir HTTP üst bilgisi aracılığıyla sağlamak için önce base64 dizesine dönüştürün. Aşağıdaki örnekte C# kullanarak Base64'e nasıl dönüştürüldüğü gösterilmektedir. Elde edilen dizeyi http üst bilgisi olarak aşağıdaki biçimde sağlayabilirsiniz:
Authorization: Basic BASE64USERNAME:PATSTRING
REST API
REST API aracılığıyla kuruluşunuza yönelik projelerin listesini alma örneğine bakın.
using System.Net.Http;
using System.Net.Http.Headers;
...
//encode your personal access token
string credentials = Convert.ToBase64String(System.Text.ASCIIEncoding.ASCII.GetBytes(string.Format("{0}:{1}", "", personalAccessToken)));
ListOfProjectsResponse.Projects viewModel = null;
//use the httpclient
using (var client = new HttpClient())
{
client.BaseAddress = new Uri($"https://dev.azure.com/{OrgName}/"); //url of your organization
client.DefaultRequestHeaders.Accept.Clear();
client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json"));
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic", credentials);
//connect to the REST endpoint
HttpResponseMessage response = client.GetAsync("_apis/projects?stateFilter=All&api-version=1.0").Result;
//check to see if we have a successful response
if (response.IsSuccessStatusCode)
{
//set the viewmodel from the content in the response
viewModel = response.Content.ReadAsAsync<ListOfProjectsResponse.Projects>().Result;
//var value = response.Content.ReadAsStringAsync().Result;
}
}
.NET İstemci Kitaplıkları
Burada iki .NET İstemci Kitaplığı kullanıyoruz. .NET projenizde aşağıdaki .NET İstemci Kitaplıklarına başvurdığınızdan emin olun.
.NET İstemci Kitaplıkları aracılığıyla kuruluşunuz için projelerin listesini alma aşağıdaki örne bakın.
using Microsoft.TeamFoundation.Core.WebApi;
using Microsoft.VisualStudio.Services.Common;
...
//create uri and VssBasicCredential variables
Uri uri = new Uri(url);
VssBasicCredential credentials = new VssBasicCredential("", personalAccessToken);
using (ProjectHttpClient projectHttpClient = new ProjectHttpClient(uri, credentials))
{
IEnumerable<TeamProjectReference> projects = projectHttpClient.GetProjects().Result;
}
SSS
S: Kod örneklerinin kaynak kodunu nereden alabilirim?
Y: bkz https://github.com/Microsoft/vsts-restapi-samplecode. .
S: .NET kitaplığı hakkında daha fazla bilgiyi nereden bulabilirim?
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin