{"id":29018,"date":"2021-08-14T13:25:33","date_gmt":"2021-08-14T13:25:33","guid":{"rendered":"https:\/\/www.conectasoftware.com\/glossary\/web-service\/"},"modified":"2022-11-15T09:37:41","modified_gmt":"2022-11-15T09:37:41","slug":"web-service","status":"publish","type":"glossary","link":"https:\/\/www.conectasoftware.com\/magazine\/glosario\/web-service\/","title":{"rendered":"Web Service<span class=\"dashicons \" data-icon=\"\" style=\"color:#000;display:inline;vertical-align:baseline;\"><\/span>"},"content":{"rendered":"<p><span style=\"font-weight: 400;\">Un web service o servicio web es un tipo de tecnolog\u00eda que, a trav\u00e9s de ciertos protocolos y est\u00e1ndares, habilita la comunicaci\u00f3n entre distintas computadoras y permite intercambiar datos entre ellas, en otras palabras, un <\/span><b>web service es un tipo de <a href=\"https:\/\/es.wikipedia.org\/wiki\/Interfaz_de_programaci%C3%B3n_de_aplicaciones\" target=\"_blank\" rel=\"noopener\">API<\/a><\/b><span style=\"font-weight: 400;\"> (Interfaz de Programaci\u00f3n de Aplicaciones). <\/span><\/p>\n<h2><b>Caracter\u00edsticas de un web service<\/b><\/h2>\n<p><span style=\"font-weight: 400;\">Un web service est\u00e1 dise\u00f1ado de forma que su interfaz se represente en un formato tal que una computadora cuyas especificaciones se hayan escrito en WSL, pueda representarlo.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Por lo general, utilizar\u00e1 el protocolo HTTP sin embargo, tambi\u00e9n pueden ser empleados los siguientes protocolos:&nbsp;<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\"><span style=\"font-weight: 400;\">SOAP (XML).<\/span><\/li>\n<li style=\"font-weight: 400;\"><span style=\"font-weight: 400;\">REST.<\/span><\/li>\n<li style=\"font-weight: 400;\"><span style=\"font-weight: 400;\">XML-RPC.<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">Adem\u00e1s, el contenido del web service puede venir representado a trav\u00e9s del formato XML o del formato <a href=\"https:\/\/www.conectasoftware.com\/apps\/json\/\">JSON<\/a>, siendo el JSON el tipo de carga \u00fatil m\u00e1s com\u00fan en una API.<\/span><\/p>\n<h2><b>\u00bfEs una API un web service?<\/b><\/h2>\n<p><span style=\"font-weight: 400;\">Un web service s\u00ed que es un tipo de API pero una API puede ser un web service o no. Una API espec\u00edfica la forma en la que los componentes de software deben interactuar entre s\u00ed. Es un conjunto de rutinas y protocolos cuyas respuestas se devuelven haciendo uso de la estructura de un JSON o de un XML para representar los datos. Adem\u00e1s, las APIs se caracterizan por poder utilizar cualquier tipo de protocolo de comunicaci\u00f3n, sin estar limitadas como lo est\u00e1n los web services.&nbsp;<\/span><\/p>\n<p>&nbsp;<\/p>\n<h2><b>Y entonces lleg\u00f3.. REST<\/b><\/h2>\n<p><span style=\"font-weight: 400;\">REST (Representational State Transfer) es un concepto surgido en el a\u00f1o 2000 a trav\u00e9s de una tesis doctoral por Roy Fielding, quien es uno de los principales autores de la especificaci\u00f3n del protocolo HTTP.&nbsp;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Una API REST <\/span><b>hace uso del protocolo HTTP<\/b><span style=\"font-weight: 400;\"> para obtener los datos, siendo \u00e9stos intercambiados a trav\u00e9s de un JSON o un XML (siendo el XML mucho menos com\u00fan de ver). Las API REST se caracterizan por que <\/span><b>el estado se representa en el recurso transferido de forma que la llamada no mantiene el estado.<\/b><span style=\"font-weight: 400;\"> Adem\u00e1s, REST utiliza los m\u00e9todos de HTTP de forma expl\u00edcita, siendo los m\u00e1s comunes los siguientes:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\"><span style=\"font-weight: 400;\">GET: se utiliza para obtener un recurso.<\/span><\/li>\n<li style=\"font-weight: 400;\"><span style=\"font-weight: 400;\">POST: se utiliza para crear un recurso en el servidor.&nbsp;<\/span><\/li>\n<li style=\"font-weight: 400;\"><span style=\"font-weight: 400;\">PUT: se utiliza para actualizar un recurso del servidor o cambiarle su estado.<\/span><\/li>\n<li style=\"font-weight: 400;\"><span style=\"font-weight: 400;\">DELETE: se utiliza para eliminar un recurso del servidor.&nbsp;<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">Por otra parte, las API REST ofrecen las siguientes ventajas:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\"><span style=\"font-weight: 400;\">Separaci\u00f3n entre cliente y servidor.<\/span><\/li>\n<li style=\"font-weight: 400;\"><span style=\"font-weight: 400;\">Visibilidad, fiabilidad y escalabilidad.<\/span><\/li>\n<li style=\"font-weight: 400;\"><span style=\"font-weight: 400;\">Es siempre independiente de la plataforma y del lenguaje.<\/span><\/li>\n<\/ul>\n<h2><b>eCommerce y las APIs<\/b><\/h2>\n<p><span style=\"font-weight: 400;\">En el \u00e1rea del eCommerce, las APIs juegan un papel importante ya que ofrecen un gran n\u00famero de ventajas para la gesti\u00f3n de pedidos, detalles de precios, actualizaciones de cat\u00e1logos y datos relativos a los clientes. He aqu\u00ed algunos de los ejemplos en los que se utilizan APIs en eCommerce:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\"><b>APIs para los productos<\/b><span style=\"font-weight: 400;\">: permiten extraer datos con respecto a la identificaci\u00f3n de productos, descripciones de los mismos, im\u00e1genes, marcas, precios o descuentos entre otros.<\/span><\/li>\n<li style=\"font-weight: 400;\"><b>APIs para cat\u00e1logos<\/b><span style=\"font-weight: 400;\">: son utilizadas para crear, editar y gestionar los cat\u00e1logos en poco tiempo. Pueden ser el punto de inicio para gesti\u00f3n de inventario o generaci\u00f3n de anal\u00edticas e informes.&nbsp;<\/span><\/li>\n<li style=\"font-weight: 400;\"><b>APIs para los pagos<\/b><span style=\"font-weight: 400;\">: en un eCommerce la plataforma de pago es fundamental, por ello, los bancos ofrecen sus TPVs de forma virtual, los cuales hacen uso de APIs para el intercambio de informaci\u00f3n.<\/span><\/li>\n<li style=\"font-weight: 400;\"><b>APIs para los env\u00edos<\/b><span style=\"font-weight: 400;\">: al igual que los pagos, los env\u00edos son otra parte fundamental de un eCommerce. Empresas como correos ofrecen una API para que los pedidos puedan ser \u201cseguidos\u201d por los clientes.&nbsp;<\/span><\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<p><a href=\"https:\/\/www.conectasoftware.com\/producto\/guia-practica-para-vender-online-ebook\/\"><img loading=\"lazy\" loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-17184\" src=\"https:\/\/www.conectasoftware.com\/magazine\/wp-content\/uploads\/2020\/05\/guia-practica-para-vender-online-ebook-banner.png\" alt=\"\" width=\"2255\" height=\"1259\"><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Un web service o servicio web es un tipo de tecnolog\u00eda que, a trav\u00e9s de ciertos protocolos y est\u00e1ndares, habilita la comunicaci\u00f3n entre distintas computadoras y permite intercambiar datos entre ellas, en otras palabras, un web service es un tipo de API (Interfaz de Programaci\u00f3n de Aplicaciones). Caracter\u00edsticas de un web service Un web service [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":16677,"menu_order":0,"template":"","meta":{"content-type":"","footnotes":""},"glossary-categories":[92],"glossary-tags":[],"glossary-languages":[],"class_list":{"0":"post-29018","1":"glossary","2":"type-glossary","3":"status-publish","4":"has-post-thumbnail","6":"glossary-categories-ecommerce"},"_links":{"self":[{"href":"https:\/\/www.conectasoftware.com\/magazine\/wp-json\/wp\/v2\/glossary\/29018","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.conectasoftware.com\/magazine\/wp-json\/wp\/v2\/glossary"}],"about":[{"href":"https:\/\/www.conectasoftware.com\/magazine\/wp-json\/wp\/v2\/types\/glossary"}],"author":[{"embeddable":true,"href":"https:\/\/www.conectasoftware.com\/magazine\/wp-json\/wp\/v2\/users\/1"}],"version-history":[{"count":1,"href":"https:\/\/www.conectasoftware.com\/magazine\/wp-json\/wp\/v2\/glossary\/29018\/revisions"}],"predecessor-version":[{"id":36014,"href":"https:\/\/www.conectasoftware.com\/magazine\/wp-json\/wp\/v2\/glossary\/29018\/revisions\/36014"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.conectasoftware.com\/magazine\/wp-json\/wp\/v2\/media\/16677"}],"wp:attachment":[{"href":"https:\/\/www.conectasoftware.com\/magazine\/wp-json\/wp\/v2\/media?parent=29018"}],"wp:term":[{"taxonomy":"glossary-categories","embeddable":true,"href":"https:\/\/www.conectasoftware.com\/magazine\/wp-json\/wp\/v2\/glossary-categories?post=29018"},{"taxonomy":"glossary-tags","embeddable":true,"href":"https:\/\/www.conectasoftware.com\/magazine\/wp-json\/wp\/v2\/glossary-tags?post=29018"},{"taxonomy":"glossary-languages","embeddable":true,"href":"https:\/\/www.conectasoftware.com\/magazine\/wp-json\/wp\/v2\/glossary-languages?post=29018"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}