{"id":36,"date":"2013-01-28T20:12:34","date_gmt":"2013-01-28T19:12:34","guid":{"rendered":"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/?p=36"},"modified":"2013-07-16T10:09:18","modified_gmt":"2013-07-16T09:09:18","slug":"sharepoint-2013-consumo-de-la-api-rest-desde-apps-sharepoint-hosted-i","status":"publish","type":"post","link":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/sharepoint-2013-consumo-de-la-api-rest-desde-apps-sharepoint-hosted-i\/","title":{"rendered":"[SharePoint 2013] Consumo de la API Rest desde APPs SharePoint-Hosted (I)"},"content":{"rendered":"<p>Una de las grandes novedades para los desarrolladores es la mejora en las funciones de la API Rest. Lo primero de todos tendr\u00edamos que definir que es la famosa API Rest. La API Rest nos permite interactuar SharePoint usando cualquier tecnolog\u00eda que soporte REST. Y REST se construye a trav\u00e9s de una petici\u00f3n HTTP usando el protocolo OData y emite la respuesta en un formato Atom o JSON.<br \/>\nTras esta parrafada lo que significa hablando claro es que el contenido que hay en SharePoint se puede consumir desde cualquier tipo de Tecnolog\u00eda no tiene porque ser MS y lo mejor de todo que por fin se adapta a los est\u00e1ndares web lo que facilita que el n\u00famero de desarrolladores que SharePoint se puede incrementar en los pr\u00f3ximos meses, a\u00f1os&#8230;<br \/>\nEsta API Rest ya estaba presente en la versi\u00f3n de 2010 pero bastante limitada solo la pod\u00edas utilizar en listas y bibliotecas, ahora se ha a\u00f1adido la opci\u00f3n de interactuar con sitios y servicios (b\u00fasqueda, perfil de usuario y publicaci\u00f3n). Y ademas nos dan mayores opciones es decir podemos realizar filtros de elementos, ordenar, obtener los n primero registros, es decir nos pone las cosas mucho m\u00e1s sencillas.<\/p>\n<p><!--more-->En los siguientes ejemplo voy a crear una APP de demostraci\u00f3n donde voy a rellenar un combo leyendo la informaci\u00f3n de una lista, veremos lo sencillo que es \ud83d\ude42<br \/>\nPara empezar nos metemos dentro del Visual Studio 2012 y seleccionamos crearnos una APP de Sharepoint 2013, en este primer punto ya tenemos que decir que tipo de arquitectura va a seguir nuestra APP, ya que nos indica que tipo de Alojamiento vamos a realizar. El tipo de alojamiento puede ser Auto-Hosted (que son las alojadas en Azure), Provider-Hosted (alojadas en un servidor del proveedor) o SharePoint-Hosted (alojadas en el propio servidor). En nuestro caso esta claro que vamos a alojarlas en el propio servidor de desarrollo, principalmente por comodidad y rapidez para realizar estas pruebas. Pero en que nos condiciona el elegir un alojamiento u otro, pues en la forma en la que vamos a consumir los datos de las listas, bibliotecas de SharePoint ya estar\u00eda incluida en caso de SharePoint-Hosted y en el resto de opciones tendriamos las restricciones de cross-domain a la hora de realizar las llamadas JavaScript (que ya hablar\u00e9 en futuros post).<br \/>\n<a href=\"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2013\/01\/Articulo1.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-41\" alt=\"\" src=\"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2013\/01\/Articulo1.png\" width=\"400\" height=\"300\" \/><\/a><\/p>\n<p>El siguiente paso una vez hemos seleccionado estos pasos es ver la estructura de Proyecto que nos ha generado Visual Studio, que quedar\u00eda de la siguiente forma:<br \/>\n<a href=\"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2013\/01\/21.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-42\" alt=\"\" src=\"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2013\/01\/21.png\" width=\"315\" height=\"402\" \/><\/a><br \/>\nVemos que el proyecto lo ha separado en varias partes:<br \/>\n1. <strong>Carpeta Content<\/strong> donde definiremos los elementos que vamos a crear dentro de SharePoint listas, bibliotecas, tambien podemos a\u00f1adir los ficheros css (para darle los estilos que correspondan).<br \/>\n2. <strong>Pages <\/strong> Aqui introduciremos las paginas que va a tener nuestra aplicaci\u00f3n<br \/>\n3. <strong>Scripts<\/strong> En esta parte est\u00e1n todos los ficheros .js que va a utilizar nuestra aplicaci\u00f3n, por regla general por un lado tenemos las referencias a los ficheros jquery que utiliza y por otro lado tenemos un fichero app.js que es la ubicaci\u00f3n donde nosotros introduciremos el c\u00f3digo que va a desplegar nuestra aplicaci\u00f3n.<\/p>\n<p>Si no me he vuelto loco esto es un Proyecto abierto con Visual Studio donde tenemos que saber si o si JavaScript (ahora mismo mi conocimiento sobre JavaScript es nivel aprendiz, estoy aprendiendo todas las bondades de este lenguaje de programaci\u00f3n).<br \/>\nAhora lo que vamos a editar el proyecto fichero APP.js para a\u00f1adirle el c\u00f3digo que queremos implementar en nuestro caso vamos a implementar una llamada para que nos cargue el contenido de una lista \u00abEmpleados\u00bb, para esto lo primero es eliminar casi todo el contenido que hay en este fichero APP.js y dejarlo como esto<br \/>\n$(document).ready(function ()<br \/>\n{<br \/>\nCreateCombo();<br \/>\n}<br \/>\nEl resto del contenido no nos vale (salvo que queramos ver un Hola mundo en nuestra aplicaci\u00f3n).<br \/>\nAhora el primer paso es crearnos la funci\u00f3n que lea de la API Rest y nos rellene los valores del combo para eso nos valdr\u00eda la siguiente funci\u00f3n:<\/p>\n<blockquote>\n<pre>function CreateCombo() {\r\n    Resultados = {\r\n        elements: '',\r\n        url: '',\r\n\r\n        init: function (element) {\r\n            Resultados.elements = element;\r\n            Resultados.url = _spPageContextInfo.webAbsoluteUrl + \"\/_api\/web\/lists\/getbytitle('Superheroes')\/items\/\";\r\n        },\r\n        load: function () {\r\n            $.ajax({\r\n                url: Resultados.url,\r\n                method: \"GET\",\r\n                headers: {\r\n                    \"accept\": \"application\/json;odata=verbose\",\r\n                },\r\n                success: Resultados.onSuccess,\r\n                error: Resultados.onError\r\n\r\n            });\r\n        },\r\n        onSuccess: function (data) {\r\n            var myresultados = data.d.results;\r\n\r\n            var htmlResultados = \"&lt;label&gt;Elije tu SuperHeroe preferido: &lt;\/label&gt;  &lt;select id='combobox'&gt;&lt;option value=''&gt;Elije uno...&lt;\/option&gt;\";\r\n            for (var i = 0; i &lt; myresultados.length; i++) {\r\n                htmlResultados += \"&lt;option value='\" + i + \"'&gt;\" + myresultados[i].Title + \"&lt;\/option&gt;\";\r\n            }\r\n            htmlResultados += \"&lt;\/select&gt;\";\r\n            var capa = document.getElementById(\"combo\");\r\n            var combo = document.createElement(\"combosuper\");\r\n            combo.innerHTML = htmlResultados;\r\n            capa.appendChild(combo);\r\n\r\n            \/\/Resultados.element.html(htmlResultados);\r\n        },\r\n        onError: function (err) {\r\n            alert(JSON.stringify(err));\r\n        }\r\n    }\r\n    Resultados.init('#combo');\r\n    Resultados.load();\r\n\r\n}<\/pre>\n<\/blockquote>\n<p>Antes de ver el resultado final voy a explicar un poco que hace esta funci\u00f3n, el primer paso de todo es me creo una clase(como si fuera .NET pero a lo Java) en esta clase lo que hago es en primer lugar me creo dos variables una primera donde tengo el elemento Dom donde voy a representar los resultados, otra segunda variable donde introduzco la url donde esta el servicio donde vamos a obtener datos en mi caso una lista de Superheroes. A continuaci\u00f3n me creo una funci\u00f3n init que traduciendo su referencia a .Net es como si fuera el Constructor y que es una buena pr\u00e1ctica inicializar las variables antes de utilizarlas. A continuaci\u00f3n creo un m\u00e9todo Load que indico que es lo que voy ha realizar una vez invoque este m\u00e9todo, y que es lo que voy a realizar pues realizar la llamada JSON para obtener los elementos de la lista. Como esta llamada es as\u00edncrona es decir que los datos los puedo recibir antes o despu\u00e9s y no por ello debo de dejar su ejecuci\u00f3n parada para eso implemento dos m\u00e9todos uno en el que en caso que obtenga la llamada se produzca con \u00e9xito que lo que hace es pintar los datos que hemos obtenido con el formato de un combo. En caso de que se produzca un error pues mostramos un alert para indicarnos el tipo de error que se ha producido.<br \/>\nEl resultado en mi caso ser\u00eda el siguiente:<br \/>\n<a href=\"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2013\/01\/31.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-50\" alt=\"\" src=\"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2013\/01\/31.png\" width=\"401\" height=\"348\" \/><\/a><\/p>\n<p>Antes de hacer esto en primer lugar me he creado una lista utilizando el Asistente de Visual Studio y dentro de la p\u00e1gina default.aspx he eliminado el id que creado por defecto y he a\u00f1adido un div con id=&#8217;combo&#8217; que lo utilizo como referencia para a\u00f1adirle el combo.<br \/>\nEl tema del asistente de Visual Studio para crear listas tambi\u00e9n quiero abordarlo en futuros post, ya que para mi juicio han a\u00f1adido funcionalidad pero no mas que la que daba soluciones como el Software Factory y seguimos teniendo que recurrir a a\u00f1adir campos de Taxonom\u00eda y de Lookup utilizando c\u00f3digo, por lo que si hay que morir usando codigo pues el asistente creo que carece de sentido y de la utilidad necesaria (pero bueno sabemos que estamos en las primeras versiones y seguro que MS se lo apuntan para nuevos Updates \ud83d\ude42<br \/>\nTambi\u00e9n que aunque es un ejemplo base sirve para afianzar conceptos, la idea que tengo es ir a\u00f1adiendo post para explicar el uso b\u00e1sico de esta API REST, desde como visualizarlos a como a\u00f1adir\/editamos\/eliminamos nuevos registros en una lista e ir adapt\u00e1ndonos a esta \u00abNueva\u00bb forma de desarrollar sobre nuestro servidor favorito \ud83d\ude42<\/p>\n<!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons generic via filter on the_content --><span class=\"et_bloom_bottom_trigger\"><\/span>","protected":false},"excerpt":{"rendered":"<p>Una de las grandes novedades para los desarrolladores es la mejora en las funciones de la API Rest. Lo primero de todos tendr\u00edamos que definir que es la famosa API Rest. La API Rest nos permite interactuar SharePoint usando cualquier &hellip; <a href=\"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/sharepoint-2013-consumo-de-la-api-rest-desde-apps-sharepoint-hosted-i\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><!-- AddThis Advanced Settings generic via filter on get_the_excerpt --><!-- AddThis Share Buttons generic via filter on get_the_excerpt --><\/p>\n","protected":false},"author":8,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[11],"tags":[15,19,20,151],"class_list":["post-36","post","type-post","status-publish","format-standard","hentry","category-sharepoint-2013","tag-api-rest","tag-javascript","tag-json","tag-sharepoint-2013"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v18.2.1 (Yoast SEO v27.3) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>[SharePoint 2013] Consumo de la API Rest desde APPs SharePoint-Hosted (I) - Desarrollando sobre SharePoint<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/sharepoint-2013-consumo-de-la-api-rest-desde-apps-sharepoint-hosted-i\/\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:title\" content=\"[SharePoint 2013] Consumo de la API Rest desde APPs SharePoint-Hosted (I) - Desarrollando sobre SharePoint\" \/>\n<meta name=\"twitter:description\" content=\"Una de las grandes novedades para los desarrolladores es la mejora en las funciones de la API Rest. Lo primero de todos tendr\u00edamos que definir que es la famosa API Rest. La API Rest nos permite interactuar SharePoint usando cualquier &hellip; Continue reading &rarr;\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2013\/01\/Articulo1.png\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Adri\u00e1n D\u00edaz\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/sharepoint-2013-consumo-de-la-api-rest-desde-apps-sharepoint-hosted-i\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/sharepoint-2013-consumo-de-la-api-rest-desde-apps-sharepoint-hosted-i\\\/\"},\"author\":{\"name\":\"Adri\u00e1n D\u00edaz\",\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/#\\\/schema\\\/person\\\/c9bfaede1bfba9564bb7f500788782bb\"},\"headline\":\"[SharePoint 2013] Consumo de la API Rest desde APPs SharePoint-Hosted (I)\",\"datePublished\":\"2013-01-28T19:12:34+00:00\",\"dateModified\":\"2013-07-16T09:09:18+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/sharepoint-2013-consumo-de-la-api-rest-desde-apps-sharepoint-hosted-i\\\/\"},\"wordCount\":1166,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/sharepoint-2013-consumo-de-la-api-rest-desde-apps-sharepoint-hosted-i\\\/#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2013\\\/01\\\/Articulo1.png\",\"keywords\":[\"API Rest\",\"JavaScript\",\"JSon\",\"sharepoint 2013\"],\"articleSection\":[\"sharepoint 2013\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/sharepoint-2013-consumo-de-la-api-rest-desde-apps-sharepoint-hosted-i\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/sharepoint-2013-consumo-de-la-api-rest-desde-apps-sharepoint-hosted-i\\\/\",\"url\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/sharepoint-2013-consumo-de-la-api-rest-desde-apps-sharepoint-hosted-i\\\/\",\"name\":\"[SharePoint 2013] Consumo de la API Rest desde APPs SharePoint-Hosted (I) - Desarrollando sobre SharePoint\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/sharepoint-2013-consumo-de-la-api-rest-desde-apps-sharepoint-hosted-i\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/sharepoint-2013-consumo-de-la-api-rest-desde-apps-sharepoint-hosted-i\\\/#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2013\\\/01\\\/Articulo1.png\",\"datePublished\":\"2013-01-28T19:12:34+00:00\",\"dateModified\":\"2013-07-16T09:09:18+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/#\\\/schema\\\/person\\\/c9bfaede1bfba9564bb7f500788782bb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/sharepoint-2013-consumo-de-la-api-rest-desde-apps-sharepoint-hosted-i\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/sharepoint-2013-consumo-de-la-api-rest-desde-apps-sharepoint-hosted-i\\\/#primaryimage\",\"url\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2013\\\/01\\\/Articulo1.png\",\"contentUrl\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2013\\\/01\\\/Articulo1.png\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/#website\",\"url\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/\",\"name\":\"Desarrollando sobre SharePoint\",\"description\":\"Arquitectura, buenas pr\u00e1cticas y desarrollo sobre la nueva herramienta de Microsoft SharePoint 2016\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/#\\\/schema\\\/person\\\/c9bfaede1bfba9564bb7f500788782bb\",\"name\":\"Adri\u00e1n D\u00edaz\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/fe10b9eaf8ce4565ec75fba5a0d121c16186696e515cad2bedd42f6cf54e2007?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/fe10b9eaf8ce4565ec75fba5a0d121c16186696e515cad2bedd42f6cf54e2007?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/fe10b9eaf8ce4565ec75fba5a0d121c16186696e515cad2bedd42f6cf54e2007?s=96&d=mm&r=g\",\"caption\":\"Adri\u00e1n D\u00edaz\"},\"description\":\"Adri\u00e1n D\u00edaz es Ingeniero Inform\u00e1tico por la Universidad Polit\u00e9cnica de Valencia. Es MVP de Microsoft en la categor\u00eda Office Development desde 2014, MCPD de SharePoint 2010, Microsoft Active Profesional y Microsoft Comunity Contribuitor 2012. Cofundador del grupo de usuarios de SharePoint de Levante LevaPoint. Lleva desarrollando con tecnolog\u00edas Microsoft m\u00e1s de 10 a\u00f1os y desde hace 3 a\u00f1os est\u00e1 centrado en el desarrollo sobre SharePoint. Actualmente es Software &amp; Cloud Architect Lead en ENCAMINA.\",\"url\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/author\\\/desarrollandosobresharepoint\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"[SharePoint 2013] Consumo de la API Rest desde APPs SharePoint-Hosted (I) - Desarrollando sobre SharePoint","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/sharepoint-2013-consumo-de-la-api-rest-desde-apps-sharepoint-hosted-i\/","twitter_card":"summary_large_image","twitter_title":"[SharePoint 2013] Consumo de la API Rest desde APPs SharePoint-Hosted (I) - Desarrollando sobre SharePoint","twitter_description":"Una de las grandes novedades para los desarrolladores es la mejora en las funciones de la API Rest. Lo primero de todos tendr\u00edamos que definir que es la famosa API Rest. La API Rest nos permite interactuar SharePoint usando cualquier &hellip; Continue reading &rarr;","twitter_image":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2013\/01\/Articulo1.png","twitter_misc":{"Escrito por":"Adri\u00e1n D\u00edaz","Tiempo de lectura":"6 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/sharepoint-2013-consumo-de-la-api-rest-desde-apps-sharepoint-hosted-i\/#article","isPartOf":{"@id":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/sharepoint-2013-consumo-de-la-api-rest-desde-apps-sharepoint-hosted-i\/"},"author":{"name":"Adri\u00e1n D\u00edaz","@id":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/#\/schema\/person\/c9bfaede1bfba9564bb7f500788782bb"},"headline":"[SharePoint 2013] Consumo de la API Rest desde APPs SharePoint-Hosted (I)","datePublished":"2013-01-28T19:12:34+00:00","dateModified":"2013-07-16T09:09:18+00:00","mainEntityOfPage":{"@id":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/sharepoint-2013-consumo-de-la-api-rest-desde-apps-sharepoint-hosted-i\/"},"wordCount":1166,"commentCount":0,"image":{"@id":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/sharepoint-2013-consumo-de-la-api-rest-desde-apps-sharepoint-hosted-i\/#primaryimage"},"thumbnailUrl":"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2013\/01\/Articulo1.png","keywords":["API Rest","JavaScript","JSon","sharepoint 2013"],"articleSection":["sharepoint 2013"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/sharepoint-2013-consumo-de-la-api-rest-desde-apps-sharepoint-hosted-i\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/sharepoint-2013-consumo-de-la-api-rest-desde-apps-sharepoint-hosted-i\/","url":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/sharepoint-2013-consumo-de-la-api-rest-desde-apps-sharepoint-hosted-i\/","name":"[SharePoint 2013] Consumo de la API Rest desde APPs SharePoint-Hosted (I) - Desarrollando sobre SharePoint","isPartOf":{"@id":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/#website"},"primaryImageOfPage":{"@id":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/sharepoint-2013-consumo-de-la-api-rest-desde-apps-sharepoint-hosted-i\/#primaryimage"},"image":{"@id":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/sharepoint-2013-consumo-de-la-api-rest-desde-apps-sharepoint-hosted-i\/#primaryimage"},"thumbnailUrl":"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2013\/01\/Articulo1.png","datePublished":"2013-01-28T19:12:34+00:00","dateModified":"2013-07-16T09:09:18+00:00","author":{"@id":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/#\/schema\/person\/c9bfaede1bfba9564bb7f500788782bb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/sharepoint-2013-consumo-de-la-api-rest-desde-apps-sharepoint-hosted-i\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/sharepoint-2013-consumo-de-la-api-rest-desde-apps-sharepoint-hosted-i\/#primaryimage","url":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2013\/01\/Articulo1.png","contentUrl":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2013\/01\/Articulo1.png"},{"@type":"WebSite","@id":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/#website","url":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/","name":"Desarrollando sobre SharePoint","description":"Arquitectura, buenas pr\u00e1cticas y desarrollo sobre la nueva herramienta de Microsoft SharePoint 2016","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Person","@id":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/#\/schema\/person\/c9bfaede1bfba9564bb7f500788782bb","name":"Adri\u00e1n D\u00edaz","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/secure.gravatar.com\/avatar\/fe10b9eaf8ce4565ec75fba5a0d121c16186696e515cad2bedd42f6cf54e2007?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/fe10b9eaf8ce4565ec75fba5a0d121c16186696e515cad2bedd42f6cf54e2007?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/fe10b9eaf8ce4565ec75fba5a0d121c16186696e515cad2bedd42f6cf54e2007?s=96&d=mm&r=g","caption":"Adri\u00e1n D\u00edaz"},"description":"Adri\u00e1n D\u00edaz es Ingeniero Inform\u00e1tico por la Universidad Polit\u00e9cnica de Valencia. Es MVP de Microsoft en la categor\u00eda Office Development desde 2014, MCPD de SharePoint 2010, Microsoft Active Profesional y Microsoft Comunity Contribuitor 2012. Cofundador del grupo de usuarios de SharePoint de Levante LevaPoint. Lleva desarrollando con tecnolog\u00edas Microsoft m\u00e1s de 10 a\u00f1os y desde hace 3 a\u00f1os est\u00e1 centrado en el desarrollo sobre SharePoint. Actualmente es Software &amp; Cloud Architect Lead en ENCAMINA.","url":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/author\/desarrollandosobresharepoint\/"}]}},"_links":{"self":[{"href":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-json\/wp\/v2\/posts\/36","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-json\/wp\/v2\/comments?post=36"}],"version-history":[{"count":0,"href":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-json\/wp\/v2\/posts\/36\/revisions"}],"wp:attachment":[{"href":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-json\/wp\/v2\/media?parent=36"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-json\/wp\/v2\/categories?post=36"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-json\/wp\/v2\/tags?post=36"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}