Compartir a través de


Acceso a datos externos con REST en SharePoint

Aprenda a acceder a los datos externos de SharePoint usando las URL de Transferencia del estado representativo (REST) para Servicios de conectividad empresarial (BCS). En este artículo se indica cómo configurar una lista externa que recupere datos de un origen de Open Data Protocol (OData).

Requisitos previos para obtener acceso a datos externos con REST

Para obtener acceso a datos externos desde SharePoint con REST, necesita lo siguiente:

Conceptos principales para saber cuándo acceder a los datos externos con REST

El servicio REST de SharePoint ofrece un método para tener acceso a datos externos con una dirección URL construida especialmente. Para comprender cómo funciona y cómo usarlo, consulte los artículos siguientes.

Tabla 1. Conceptos básicos para REST en SharePoint

Título del artículo Descripción
Usar operaciones de consulta de OData en solicitudes REST de SharePoint Aprenda a usar el servicio REST de SharePoint, que proporciona una interfaz comparable al modelo de objetos de cliente existente de programación de REST.
Introducción al servicio REST para SharePoint Obtenga información sobre los conceptos básicos del uso del servicio REST de SharePoint para obtener acceso a los datos de SharePoint y actualizarlos usando los protocolos web estándar REST y OData.
Completar operaciones básicas con puntos de conexión REST de SharePoint Obtenga información sobre cómo desplazarse por la estructura de datos SharePoint tal y como está representado en el servicio REST, realizar operaciones CRUD (crear, leer, actualizar y eliminar) habituales en los elementos de SharePoint a través del servicio REST, sincronizar elementos de SharePoint en aplicaciones y controlar la simultaneidad de elemento.

Crear un complemento de SharePoint para tener acceso a datos externos con REST

Los procedimientos siguientes le guiarán a través de un Complemento de SharePoint y configuración de una página Web para hacer que las solicitudes de uso de funciones REST para recuperar datos de un origen de datos externo.

Para crear un complemento de SharePoint

  1. Abra Visual Studio 2012 o posterior.
  2. Cree una Aplicación para un proyecto de SharePoint.
  3. Especifique la configuración de la aplicación, incluido su nombre, la dirección URL del sitio donde depurarla y el modo en que se va a hospedar (hospedada automáticamente, hospedada por el proveedor u hospedada por SharePoint). Para obtener más información sobre las opciones de hospedaje, vea Elegir patrones para desarrollar y hospedar el complemento de SharePoint.
  4. Elija Finalizar para crear la aplicación.

Para generar el tipo de contenido externo

  1. En el Explorador de soluciones, abra el menú contextual del proyecto y elija Agregar, Tipos de contenido para origen de datos externo.

  2. En la página Especificar el origen de OData, escriba la dirección URL del servicio de OData que desea conectarse. En este caso, use el origen de Northwind OData publicado en https://www.odata.org/ecosystem. Establezca la dirección URL del servicio OData en http://services.odata.org/Northwind/Northwind.svc/y proporcione un nombre para el origen de datos.

    Elija Siguiente.

  3. Se mostrará una lista de entidades de datos que va a expuestos por la OData Service. Seleccione la entidad de los clientes. Asegúrese de seleccionar la casilla de verificación crear instancias de la lista de las entidades de datos seleccionados (excepto las operaciones del servicio).

  4. Elija Finalizar.

Ejemplo de código: Agregar scripts y HTML a la página Home.aspx

En este punto, tiene un tipo de contenido externo y una lista externa que muestra los datos desde el origen de Northwind OData.

El siguiente objetivo consiste en modificar la página default.aspx que se creó cuando creó la aplicación. Se agregará un contenedor para almacenar los resultados de la consulta que se ejecuta con la carga de las páginas. Mediante la ejecución de las secuencias de comandos en el evento de carga de página, se asegura de que la secuencia de comandos se ejecuta cada vez que se examina la página y, a continuación, se realizan las llamadas REST resultantes al origen de Northwind OData para agregar registros a la página.

Para agregar el contenedor a la página Default.aspx

  1. En el Explorador de soluciones, abra la página Default.aspx en el módulo páginas.
  2. Agregue el siguiente elemento div a la página:
<div id="displayDiv"></div>
  1. Guarde la página.

Por último, se agrega código al archivo App.js que se ejecuta cuando la página se carga.

Para modificar el archivo App.js para realizar llamadas REST

  1. Abra el archivo App.js en el módulo Scripts del proyecto de SharePoint.
  2. Pegue el siguiente código al final del archivo.
$(document).ready(function () {

  // Namespace
  window.AppLevelECT = window.AppLevelECT || {};

  // Constructor
  AppLevelECT.Grid = function (hostElement, surlWeb) {
      this.hostElement = hostElement;
      if (surlWeb.length > 0 &amp;&amp; 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();
}

Presione F5 para implementar la aplicación en SharePoint. Vaya a la página Default.aspx en la aplicación y verá que aparece una lista de clientes en ella.

Vea también