Accès à des données externes à l’aide de REST dans SharePoint
Découvrez comment accéder à des données externes à partir de SharePoint à l’aide d’URL Representational State Transfer (REST) pour Business Connectivity Services (BCS). Cet article explique comment configurer une liste externe qui récupère des données à partir d’une source OData (Open Data Protocol).
Conditions préalables à l’accès à des données externes à l’aide de REST
Pour accéder à des données externes à partir de SharePoint à l’aide de REST, vous avez besoin des éléments suivants :
SharePoint
Visual Studio 2012
Outils de développement Office pour Visual Studio 2012
Un environnement de développement de compléments SharePoint fonctionnels : suivez les instructions de Configurer un environnement de développement général pour SharePoint.
Accès aux producteurs OData.org publics
Principaux concepts à connaître lors de l’accès à des données externes avec REST
Le service REST SharePoint permet d’accéder aux données externes à l’aide d’une URL spécialement construite. Pour comprendre comment il fonctionne et comment l’utiliser, consultez les articles suivants.
Tableau 1. Concepts fondamentaux de REST dans SharePoint
| Titre d’article | Description |
|---|---|
| Utiliser les opérations de requête OData dans les demandes REST SharePoint |
Découvrez comment utiliser le service REST SharePoint, qui fournit une interface de programmation REST comparable au modèle objet client existant. |
| Découvrir le service REST SharePoint |
Acquérez les notions fondamentales de l’utilisation du service REST SharePoint pour accéder à des données SharePoint et les mettre à jour au moyen des protocoles web standard REST et OData. |
| Effectuer des opérations de base à l’aide de points de terminaison REST SharePoint |
Découvrez comment naviguer dans la structure de données SharePoint comme représenté dans le service REST, effectuer des opérations CRUD (créer, lire, mettre à jour et supprimer) courantes sur des éléments SharePoint via le service REST, synchroniser des éléments SharePoint entre des applications et contrôler l’accès concurrentiel aux éléments. |
Créer un complément SharePoint pour accéder à des données externes à l’aide de REST
Les procédures suivantes vous aideront à configurer un Complément SharePoint et configuration d'une page Web pour effectuer des requêtes à l'aide de fonctions REST pour récupérer des données à partir d'une source de données externe.
Pour créer un complément SharePoint
Ouvrez Visual Studio 2012 ou version ultérieure.
Créez un projet d’application pour SharePoint.
Spécifier les paramètres d'application, y compris le nom de l'application, l'URL du site pour le débogage de l'application, et comment vous voulez héberger l'application (auto-hébergement, hébergé par le fournisseur, hébergée sur SharePoint). Pour plus d'informations sur les options d'hébergement, voir Choisir les modèles de développement et l'hébergement d'un complément pour SharePoint.
Cliquez sur Terminer pour créer l'application.
Pour générer le type de contenu externe
Dans L'Explorateur de solutions, ouvrez le menu contextuel du projet et choisissez Ajouter, Types de contenu pour la Source de données externe.
Dans la page Spécifier la Source de OData, entrez l'URL du service OData que vous souhaitez vous connecter. Dans ce cas, utilisez la source Northwind OData publiée à http://www.odata.org/ecosystem. Définir l'URL du service OData pour
http://services.odata.org/Northwind/Northwind.svc/et fournir un nom pour la source de données.Cliquez sur Suivant.
Cette opération affiche la liste des entités de données qui sont exposés par le OData Service. Sélectionnez l'entité de clients. Vérifiez que la case à cocher créer des instances de liste pour les entités de données sélectionné (à l'exception des opérations de Service) est activée.
Cliquez sur Terminer.
Exemple de code : ajouter des scripts et du code HTML à la page Home.aspx
À ce stade, vous avez un type de contenu externe et une liste externe qui affichera les données à partir de la source OData Northwind.
L'objectif suivant consiste à modifier la page default.aspx qui a été créée lorsque vous avez créé votre application. Vous allez ajouter un conteneur pour stocker les résultats de la requête est exécutée avec le chargement de la page. En exécutant les scripts de l'événement de chargement de page, vous assurez que le script est exécuté chaque fois que la page est explorée, et les appels REST qui en résulte sont apportées à la source Northwind OData pour ajouter des enregistrements à la page.
Pour ajouter le conteneur à la page Default.aspx
Dans L'Explorateur de solutions, ouvrez la page Default.aspx dans le module de Pages.
Ajoutez l'élément div suivant à la page.
<div id="displayDiv"></div>
- Enregistrez la page.
Enfin, vous ajoutez le code dans le fichier App.js qui s'exécute lorsque le chargement de la page.
Pour modifier le fichier App.js afin d’effectuer des appels REST
Ouvrez le fichier App.js dans le module de Scripts de votre projet SharePoint.
Collez le code suivant à la fin du fichier.
$(document).ready(function () {
// Namespace
window.AppLevelECT = window.AppLevelECT || {};
// Constructor
AppLevelECT.Grid = function (hostElement, surlWeb) {
this.hostElement = hostElement;
if (surlWeb.length > 0 && surlWeb.substring(surlWeb.length - 1, surlWeb.length) != "/")
surlWeb += "/";
this.surlWeb = surlWeb;
}
// Prototype
AppLevelECT.Grid.prototype = {
init: function () {
$.ajax({
url: this.surlWeb + "_api/lists/getbytitle('Customer')/items?$select=BdcIdentity,CustomerID,ContactName",
headers: {
"accept": "application/json",
"X-RequestDigest": $("#__REQUESTDIGEST").val()
},
success: this.showItems
});
},
showItems: function (data) {
var items = [];
items.push("<table>");
items.push('<tr><td>Customer ID</td><td>Customer Name</td></tr>');
$.each(data.d.results, function (key, val) {
items.push('<tr id="' + val.BdcIdentity + '"><td>' +
val.CustomerID + '</td><td>' +
val.ContactName + '</td></tr>');
});
items.push("</table>");
$("#displayDiv").html(items.join(''));
}
}
ExecuteOrDelayUntilScriptLoaded(getCustomers, "sp.js");
});
function getCustomers() {
var grid = new AppLevelECT.Grid($("#displayDiv"), _spPageContextInfo.webServerRelativeUrl);
grid.init();
}
Appuyez sur F5 pour déployer l'application pour SharePoint. Accédez à la page Default.aspx dans l'application, et une liste de clients s'affiche dans la page.