1

Visual Studio Online – Utilisation de la nouvelle API Rest avec Basic Authentification

Microsoft a récemment mis en ligne une nouvelle API REST sur sa plateforme cloud Visual Studio Online. Cette API va vous permettre de connecter Visual Studio Online à vos outil et service préféré. Cette API va également vous permettre de créer vos propres applications comme par exemple des applications Windows Phone ou Windows 8. Cette API utilise les standards : REST, JSON, OAuth2…

Cette API suit le modèle suivant : VERB https://{account}.VisualStudio.com/DefaultCollection/_apis[/{area}]/{resource}

Mais avant de pouvoir utiliser l’API dans vos applications, vous devez vous authentifier. Vous pouvez pour cela utiliser l’authentification de base ou le protocole OAuth.

Dans un premier temps, nous nous authentifierons à l’aide d’une authentification de base. Pour cela, vous devez activer cette méthode d’identification sur votre compte Visual Studio Online.

Rendez-vous le portail Visual Studio Online http://www.visualstudio.com/ et connectez-vous à l’aide de votre compte.

clip_image001

Une fois connecté, dans la barre de navigation, cliquez sur votre nom en haut à droite, puis sélectionnez My profile.

clip_image002

Dans la popin USER PROFILE qui apparaît, cliquez sur CREDENTIALS, puis Enable alternate credentials :

clip_image003

Saisissez le mot de passe que vous souhaitez utiliser. Attention celui-ci doit correspondre aux exigences minimales de sécurité, à savoir : Le mot de passe doit comporter au moins 8 caractères et contenir au moins trois des éléments suivants: lettres majuscules, minuscules, chiffres et symboles.

clip_image004

Remarque : Vous pouvez éventuellement définir un nom d’utilisateur secondaire qui ne soit pas sous la forme d’une adresse e-mail.

Nous pouvons maintenant utiliser l’API dans notre application. Pour illustrer ceci, j’ai créé une petite application Windows Phone 8.1 dans laquelle nous allons interroger l’API pour récupérer la liste des projets.

Cependant, il y a un autre point à prendre en compte : le versioning. En effet l’API REST de Visual Studio Online est versionnée. Ceci afin d’assurer aux applications et aux services clients de continuer de fonctionner lorsque l’API est modifiée. La version actuelle de l’ensemble de l’API est de 1.0 preview.

La version de l’API que vous souhaitez utiliser doit donc être spécifié :

Voici un extrait de code permettant de récupérer la liste des projets en utilisant cette API. Pensez à renseigner vos informations d’authentification :

private async Task<string> GetProjects()
{	
	try
        {
                var username = "USERNAME";
                var password = "PASSWORD";

                using (HttpClient client = new HttpClient())
                {
                    client.DefaultRequestHeaders.Accept.Add(
                        new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json"));

                    client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic",
                        Convert.ToBase64String(
                            System.Text.UTF8Encoding.UTF8.GetBytes(
                                string.Format("{0}:{1}", username, password))));

                    using (HttpResponseMessage response = client.GetAsync(
                                "https://keops.visualstudio.com/DefaultCollection/_apis/projects").Result)
                    {
                        response.EnsureSuccessStatusCode();
                        string responseBody = await response.Content.ReadAsStringAsync();
                        return responseBody;
                    }
                }
        }
	catch (Exception ex)
	{
                return string.Empty;
        }
}

Voici le rendu final dans mon application d’exemple :

clip_image005

Voilà, comment démarrer rapidement avec cette nouvelle API.

Plus d’information sur la manière d’intégrer Visual Studio Online dans vos applications ici : http://www.visualstudio.com/fr-fr/integrate/explore/explore-vso-vsi.

Rock’n’Roll.

gbrout

Architecte, formateur MCT et expert sur la gamme Visual Studio ALM qu'il met en œuvre sur l'ensemble des projets. Il travaille pour la société Itelios, spécialisée dans les technologies Microsoft et le commerce connecté. Il accompagne quotidiennement de nombreuses équipes et projets dans différents domaines et technologies : Windows 8, Windows Phone, ASP.NET MVC, Dynamics CRM... Passionné par le développement, ses domaines de prédilections sont avant tout l'expertise technique, l'industrialisation des développements avec la gamme Visual Studio ALM, l'analyse des performances, les tests et tout ce qui a trait à la qualité. Son expertise sur les  technologies Microsoft sa passion pour les nouvelles technologies et les développements novateurs l'a conduit à l'écriture d'un livre accessible et opérationnel sur le développement pour Windows 8 à l'aide d'HTML5 et JavaScript. Il anime également des conférences et sessions techniques telles que des live meeting en ligne ou lors d’événements comme les Techdays.

Un Commentaire

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *