{"id":1282,"date":"2014-05-20T11:00:17","date_gmt":"2014-05-20T10:00:17","guid":{"rendered":"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/?p=1282"},"modified":"2014-05-20T06:37:06","modified_gmt":"2014-05-20T05:37:06","slug":"sharepoint-tipscuriosidades-api-restodata","status":"publish","type":"post","link":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/sharepoint-tipscuriosidades-api-restodata\/","title":{"rendered":"SharePoint Tips\/Curiosidades API REST vs Odata"},"content":{"rendered":"<p>Desde este blog he escrito muchas veces sobre el porque la importancia del uso de la API Rest de SharePoint. El cambio en la forma de desarrollar en SharePoint, menos c\u00f3digo en el servidor y mucho m\u00e1s peso en el cliente ha proporcionado que basemos nuestros desarrollos en una capa de servicios. Por este motivo la importancia del servicio Rest.<br \/>\nAhora bien este servicio tal y como salio necesita diversas mejoras, algo que la primera vez que trabajas con ella te planteas dejarla de un lado y crear esta API tu mismo. Hay algunos desarrollos en los que es casi obligatorio, m\u00e1s que nada por la legibilidad del c\u00f3digo y el performance de la propia aplicaci\u00f3n.<br \/>\nQuiz\u00e1s viendo los cambios que se est\u00e1n abordando en Microsoft \u00faltimamente la opci\u00f3n correcta hubiera sido eliminar cualquier vinculaci\u00f3n con el pasado y eliminar  el servicio de _vti_bin de versiones anteriores.<br \/>\n<!--more--><\/p>\n<h2>Obtenci\u00f3n de campos de tipo nombre<\/h2>\n<p>Uno de los aspectos m\u00e1s curiosos cuando comenzamos con la API Rest es tenemos una lista con la siguiente estructura:<br \/>\n<a href=\"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2014\/05\/EjemploLista.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2014\/05\/EjemploLista.png\" alt=\"EjemploLista\" width=\"656\" height=\"253\" class=\"aligncenter size-full wp-image-1283\" srcset=\"https:\/\/encaminablogs.wpenginepowered.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2014\/05\/EjemploLista.png 656w, https:\/\/encaminablogs.wpenginepowered.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2014\/05\/EjemploLista-300x115.png 300w\" sizes=\"auto, (max-width: 656px) 100vw, 656px\" \/><\/a><\/p>\n<p>Si ahora lanzo una consulta rest sobre esta lista atacando al endpoint del servicio REST <em>\u00ab_api\/list\/GetbyTitle(&#8216;Rest&#8217;)\/items\u00bb<\/em> y lo ejecuto bien en un navegador bien en una aplicaci\u00f3n como Fiddler o Rest Console se visualiza  adem\u00e1s de toda la informaci\u00f3n complementaria al Item, toda la informaci\u00f3n de los elementos de la lista.<br \/>\nEn el siguiente c\u00f3digo muestro la inforaci\u00f3n relativa a los valores del elemento 1 de esa lista.<\/p>\n<pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\r\n             &quot;Id&quot;: 1,\r\n            &quot;ContentTypeId&quot;: &quot;0x0100C66202199E978747907F96EBF6DE3ABF&quot;,\r\n            &quot;Title&quot;: &quot;Elemento1&quot;,\r\n            &quot;UsuariosId&quot;: 12,\r\n            &quot;Taxonomia&quot;: {\r\n                &quot;__metadata&quot;: {\r\n                    &quot;type&quot;: &quot;SP.Taxonomy.TaxonomyFieldValue&quot;\r\n                },\r\n                &quot;Label&quot;: &quot;1&quot;,\r\n                &quot;TermGuid&quot;: &quot;9cef583e-9335-4e03-97e2-a972f74b93c4&quot;,\r\n                &quot;WssId&quot;: 1\r\n            },\r\n<\/pre>\n<p>Como pod\u00e9is observar la informaci\u00f3n relativa al usuario que estaba almacenada en un campo de tipo Persona solamente me indica un 12. Ahora bien siguiendo las buenas practicas a la hora de crear una API Rest  lo correcto es si quieres algo extra utilizamos el par\u00e1metro <em>$expand<\/em> e indicamos el campo que queremos expandir.<br \/>\nEntonces porque motivo el campo Taxonom\u00eda ya nos indica informaci\u00f3n complementaria al valor que esta almacenado? La verdad es que no entiendo el motivo de esta falta de criterio \ud83d\ude41<\/p>\n<p>Ahora bien, vayamos al problema yo quiero obtener el nombre del usuario para lo cual la primera aproximaci\u00f3n que realizo es, como se que todos las listas de SharePoint tienen minimo un campo Title y un campo ID decido realizar esta consulta rest: <em>\u00ab\/_api\/lists\/getbytitle(&#8216;Rest&#8217;)\/items?$select=Usuarios\/Title&amp;expand=Usuarios\/ID\u00bb<\/em><br \/>\nCuando la ejecutamos nos devuelve el siguiente error:<\/p>\n<pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\r\n{\r\n    &quot;error&quot;: {\r\n        &quot;code&quot;: &quot;-1, Microsoft.SharePoint.SPException&quot;,\r\n        &quot;message&quot;: {\r\n            &quot;lang&quot;: &quot;es-ES&quot;,\r\n            &quot;value&quot;: &quot;El campo de consulta 'Usuarios' no es v\\u00e1lido. La cadena de consulta $select debe especificar los campos de destino y la cadena de consulta $expand debe contener Usuarios.&quot;\r\n        }\r\n    }\r\n}\r\n<\/pre>\n<p>Se produce un error debido a que el campo Title no esta en la lista\/tabla\/servicio donde esta almacenada la informaci\u00f3n relativa al usuario. Ahora bien para poder consultar la informaci\u00f3n del mismo lo podemos realizar utilizando los datos que tiene un usuario como pueden ser <em>Name, LastName, Department o SipAddress<\/em>. Modificamos la consulta REST por la siguiente: <em>\u00ab\/_api\/lists\/getbytitle(&#8216;Rest&#8217;)\/items?$select= Usuarios\/Name,Usuarios\/LastName,Usuarios\/Department&amp;$expand=Usuarios\/Id\u00bb<\/em><br \/>\nEl resultado es el siguiente:<\/p>\n<pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\r\n{\r\n    &quot;d&quot;: {\r\n        &quot;results&quot;: &#x5B;{\r\n            &quot;__metadata&quot;: {\r\n                &quot;id&quot;: &quot;e8f1f992-fa2e-41f1-b389-a15373f2c645&quot;,\r\n                &quot;uri&quot;: &quot;https:\/\/encaminaoffice365.sharepoint.com\/_api\/Web\/Lists(guid'cad68435-4ef8-4697-83cb-432b923ddf32')\/Items(1)&quot;,\r\n                &quot;etag&quot;: &quot;\\&quot;1\\&quot;&quot;,\r\n                &quot;type&quot;: &quot;SP.Data.RestListItem&quot;\r\n            },\r\n            &quot;Usuarios&quot;: {\r\n                &quot;__metadata&quot;: {\r\n                    &quot;id&quot;: &quot;12702d30-8c82-4ea1-b5a9-e0fd4c69b5f9&quot;,\r\n                    &quot;type&quot;: &quot;SP.Data.UserInfoItem&quot;\r\n                },\r\n                &quot;Name&quot;: &quot;i:0#.f|membership|office365dev@encaminaoffice365.onmicrosoft.com&quot;,\r\n                &quot;LastName&quot;: &quot;Lupi\\u00e1\\u00f1ez Maestro&quot;,\r\n                &quot;Department&quot;: null\r\n            }\r\n        }]\r\n    }\r\n}\r\n<\/pre>\n<p>Si realizamos esta misma petici\u00f3n pero al servici\u00f3n ODATA <em>\u00ab\/_vti_bin\/listdata.svc\/Rest?$select=Usuarios\/Name&amp;$expand=Usuarios\/ID\u00bb<\/em>. Nos llevamos la siguiente sorpresa:<\/p>\n<pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\r\n&lt;error&gt;\r\n    &lt;code \/&gt;\r\n    &lt;message xml:lang=&quot;es-ES&quot;&gt;Type 'Microsoft.SharePoint.DataService.ListaDeInformaci\u00f3nDelUsuarioItem' does not have a property named 'ID'.&lt;\/message&gt;\r\n&lt;\/error&gt;\r\n<\/pre>\n<p> Ahora bien como se hace con el servicio Odata?<br \/>\nPues se hace siguiendo las buenas practicas, se indica que quieres visualizar el campo Usuarios y le aplicas el expand. Algo como esto: <em>\/_vti_bin\/listdata.svc\/Rest?$select=Usuarios&amp;$expand=Usuarios<\/em><br \/>\nEl resultado es el siguiente:<\/p>\n<pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\r\n &lt;d:Nombre&gt;Olga Lupi\u00e1\u00f1ez Maestro&lt;\/d:Nombre&gt;                            &lt;d:Cuenta&gt;i:0#.f|membership|office365dev@encaminaoffice365.onmicrosoft.com&lt;\/d:Cuenta&gt;                            &lt;d:CorreoElectr\u00f3nicoDelTrabajo&gt;office365dev@encaminaoffice365.onmicrosoft.com&lt;\/d:CorreoElectr\u00f3nicoDelTrabajo&gt;\r\n                            &lt;d:Tel\u00e9fonoM\u00f3vil m:null=&quot;true&quot; \/&gt;\r\n                            &lt;d:AcercaDeM\u00ed m:null=&quot;true&quot; \/&gt;\r\n                            &lt;d:Direcci\u00f3nSIP&gt;office365dev@encaminaoffice365.onmicrosoft.com&lt;\/d:Direcci\u00f3nSIP&gt;\r\n                            &lt;d:EsLaAdministraci\u00f3nDelSitio m:type=&quot;Edm.Boolean&quot;&gt;false&lt;\/d:EsLaAdministraci\u00f3nDelSitio&gt;\r\n                            &lt;d:Eliminado m:type=&quot;Edm.Boolean&quot;&gt;false&lt;\/d:Eliminado&gt;\r\n                            &lt;d:Oculto m:type=&quot;Edm.Boolean&quot;&gt;false&lt;\/d:Oculto&gt;\r\n                            &lt;d:Imagen&gt;https:\/\/encaminaoffice365-my.sharepoint.com:443\/User%20Photos\/Imagenes%20del%20perfil\/office365dev_encaminaoffice365_onmicrosoft_com_MThumb.jpg?t=63508290143, https:\/\/encaminaoffice365-my.sharepoint.com:443\/User%20Photos\/Imagenes%20del%20perfil\/office365dev_encaminaoffice365_onmicrosoft_com_MThumb.jpg?t=63508290143&lt;\/d:Imagen&gt;\r\n                            &lt;d:Departamento m:null=&quot;true&quot; \/&gt;\r\n<\/pre>\n<h2>Conclusi\u00f3n<\/h2>\n<p>Creo que la API Rest va mejorando respecto a la versi\u00f3n inicial. Pero el realizar las cosas diferentes utilizando el servicio Rest u Odata hace que dificulte su adopci\u00f3n. Deber\u00eda de estar de tratarse de forma standar independientemente de si utilizas la propia REST o el vti_bin. Sin conocer la funcionalidad interna da la sensaci\u00f3n de que han ido implementando funcionalidades en la versi\u00f3n vti_bin y estas no las han integrado en la API Rest.<br \/>\nAunque parezca una locura, se deber\u00eda unificar el acceso a la API REST aunque ello conlleve romper con compatibilidades sobre versiones anteriores, en los \u00faltimos d\u00edas estamos viendo como Microsoft est\u00e1 rompiendo con el pasado en algunos proyectos lease ASP vNext. Muchas veces observamos que no podemos evolucionar m\u00e1s un producto y la mejor forma es adaptarlo a un nuevo desarrollo mucho m\u00e1s adaptado a los tiempo, sino todav\u00eda seguir\u00edamos desarrollando en ensamblador \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>Desde este blog he escrito muchas veces sobre el porque la importancia del uso de la API Rest de SharePoint. El cambio en la forma de desarrollar en SharePoint, menos c\u00f3digo en el servidor y mucho m\u00e1s peso en el &hellip; <a href=\"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/sharepoint-tipscuriosidades-api-restodata\/\">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":[2],"tags":[15,108],"class_list":["post-1282","post","type-post","status-publish","format-standard","hentry","category-buenas-practicas","tag-api-rest","tag-buenas-practivas"],"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 Tips\/Curiosidades API REST vs Odata - Desarrollando sobre SharePoint<\/title>\n<meta name=\"description\" content=\"En este post vamos a explicar curiosidades sobre el uso de la API Rest y como solventar diversas peculiaridades al trabajar con la misma\" \/>\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-tipscuriosidades-api-restodata\/\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:title\" content=\"SharePoint Tips\/Curiosidades API REST vs Odata - Desarrollando sobre SharePoint\" \/>\n<meta name=\"twitter:description\" content=\"En este post vamos a explicar curiosidades sobre el uso de la API Rest y como solventar diversas peculiaridades al trabajar con la misma\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2014\/05\/EjemploLista.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-tipscuriosidades-api-restodata\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/sharepoint-tipscuriosidades-api-restodata\\\/\"},\"author\":{\"name\":\"Adri\u00e1n D\u00edaz\",\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/#\\\/schema\\\/person\\\/c9bfaede1bfba9564bb7f500788782bb\"},\"headline\":\"SharePoint Tips\\\/Curiosidades API REST vs Odata\",\"datePublished\":\"2014-05-20T10:00:17+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/sharepoint-tipscuriosidades-api-restodata\\\/\"},\"wordCount\":1212,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/sharepoint-tipscuriosidades-api-restodata\\\/#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2014\\\/05\\\/EjemploLista.png\",\"keywords\":[\"API Rest\",\"buenas practivas\"],\"articleSection\":[\"buenas practicas\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/sharepoint-tipscuriosidades-api-restodata\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/sharepoint-tipscuriosidades-api-restodata\\\/\",\"url\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/sharepoint-tipscuriosidades-api-restodata\\\/\",\"name\":\"SharePoint Tips\\\/Curiosidades API REST vs Odata - Desarrollando sobre SharePoint\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/sharepoint-tipscuriosidades-api-restodata\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/sharepoint-tipscuriosidades-api-restodata\\\/#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2014\\\/05\\\/EjemploLista.png\",\"datePublished\":\"2014-05-20T10:00:17+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/#\\\/schema\\\/person\\\/c9bfaede1bfba9564bb7f500788782bb\"},\"description\":\"En este post vamos a explicar curiosidades sobre el uso de la API Rest y como solventar diversas peculiaridades al trabajar con la misma\",\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/sharepoint-tipscuriosidades-api-restodata\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/sharepoint-tipscuriosidades-api-restodata\\\/#primaryimage\",\"url\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2014\\\/05\\\/EjemploLista.png\",\"contentUrl\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2014\\\/05\\\/EjemploLista.png\",\"width\":656,\"height\":253},{\"@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 Tips\/Curiosidades API REST vs Odata - Desarrollando sobre SharePoint","description":"En este post vamos a explicar curiosidades sobre el uso de la API Rest y como solventar diversas peculiaridades al trabajar con la misma","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-tipscuriosidades-api-restodata\/","twitter_card":"summary_large_image","twitter_title":"SharePoint Tips\/Curiosidades API REST vs Odata - Desarrollando sobre SharePoint","twitter_description":"En este post vamos a explicar curiosidades sobre el uso de la API Rest y como solventar diversas peculiaridades al trabajar con la misma","twitter_image":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2014\/05\/EjemploLista.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-tipscuriosidades-api-restodata\/#article","isPartOf":{"@id":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/sharepoint-tipscuriosidades-api-restodata\/"},"author":{"name":"Adri\u00e1n D\u00edaz","@id":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/#\/schema\/person\/c9bfaede1bfba9564bb7f500788782bb"},"headline":"SharePoint Tips\/Curiosidades API REST vs Odata","datePublished":"2014-05-20T10:00:17+00:00","mainEntityOfPage":{"@id":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/sharepoint-tipscuriosidades-api-restodata\/"},"wordCount":1212,"commentCount":0,"image":{"@id":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/sharepoint-tipscuriosidades-api-restodata\/#primaryimage"},"thumbnailUrl":"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2014\/05\/EjemploLista.png","keywords":["API Rest","buenas practivas"],"articleSection":["buenas practicas"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/sharepoint-tipscuriosidades-api-restodata\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/sharepoint-tipscuriosidades-api-restodata\/","url":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/sharepoint-tipscuriosidades-api-restodata\/","name":"SharePoint Tips\/Curiosidades API REST vs Odata - Desarrollando sobre SharePoint","isPartOf":{"@id":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/#website"},"primaryImageOfPage":{"@id":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/sharepoint-tipscuriosidades-api-restodata\/#primaryimage"},"image":{"@id":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/sharepoint-tipscuriosidades-api-restodata\/#primaryimage"},"thumbnailUrl":"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2014\/05\/EjemploLista.png","datePublished":"2014-05-20T10:00:17+00:00","author":{"@id":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/#\/schema\/person\/c9bfaede1bfba9564bb7f500788782bb"},"description":"En este post vamos a explicar curiosidades sobre el uso de la API Rest y como solventar diversas peculiaridades al trabajar con la misma","inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/sharepoint-tipscuriosidades-api-restodata\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/sharepoint-tipscuriosidades-api-restodata\/#primaryimage","url":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2014\/05\/EjemploLista.png","contentUrl":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2014\/05\/EjemploLista.png","width":656,"height":253},{"@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\/1282","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=1282"}],"version-history":[{"count":0,"href":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-json\/wp\/v2\/posts\/1282\/revisions"}],"wp:attachment":[{"href":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-json\/wp\/v2\/media?parent=1282"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-json\/wp\/v2\/categories?post=1282"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-json\/wp\/v2\/tags?post=1282"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}