Pero, en serio, ¿qué es un descanso de todos modos?

A pesar de toda la agitación que tuvo lugar en la API WP REST, que aparece crónicamente, hay algo crucial que creo que muchos desarrolladores de WordPress pueden no entender: ¿qué demonios hace este Acronim “descansa”? La mayoría de los desarrolladores de WordPress entienden qué es una API: es un conjunto de métodos acordados para interoperar diferentes sistemas. Pero esto con el resto es solo una palabra de moda para muchos de nosotros. Si es cierto para usted, lea más. Mi objetivo es armarlo para explicar con confianza el resto de las personas dentro o fuera de WordPress y hacerle confianza en la forma en que este “descanso API” le enseñará sobre el resto de este “descanso”.
Descanso y http. La misma cosa básica. Esencialmente, su semejanza con HTTP es el atractivo del “descanso API”. Internet funciona a través de HTTP. HTTP es un protocolo libre de estado que tiene un conjunto estándar de métodos. Su navegador web se comunica con servidores que hablan verbos HTTP como Get and Post a los servidores configurados para responder a ellos de ciertas maneras. Si solo está navegando por un sitio como WPShout, su navegador recibirá una solicitud GET HTTP a nuestro servidor y recibirá de regreso de WordPress el código HTML que ve. Si envía un formulario de Internet, esos datos generalmente se transmiten a través de una solicitud de publicación HTTP.
Sé lo que piensas: “Pero David, vine aquí para aprender sobre el resto. Sé lo que es HTTP “. Pero pongo en cuestionar el contexto de HTTP, porque, en esencia, su semejanza con HTTP es el atractivo de “APIS Rest” o “El resto” (los dos son prácticamente lo mismo, y puedo usarlos indacanglosamente). Lo que hace que la gente sea como el resto es que ya entiendo los elementos básicos de HTTP. Las solicitudes se realizan con un determinado verbo, y las respuestas son recibidas por el cliente que llama. ¿Qué es el resto? Transferencia de estado representativa “Hey, muchas API son bastante complicadas y confusas. Ya tenemos esta API bastante buena llamada HTTP. Usemos esto para hacer mejores API. Serán más predecibles e inteligibles y todos los amarán ”. Así que hemos establecido que el resto es como HTTP. Pero, ¿qué significa el acrónimo? ¿Qué es la transferencia de estado representativo? ¿Por qué el gran nombre largo? Pensé en tratar de romper la palabra con palabra, pero honestamente no puedo y probablemente no sería útil si pudiera. Entonces, por otro lado, déjame decirte una cantidad muy pequeña de historia relevante. El nombre “Transferencia de estado representativa” a este respecto proviene de un tipo llamado Roy Fielding. En su tesis doctoral, el Sr. Fielding dijo prácticamente: “Hola, muchas API son bastante complicadas y confundidas. Ya tenemos esta API bastante buena llamada HTTP. Usemos esto para hacer mejores API. Serán más predecibles y más inteligibles y todos los amarán ”. (Aunque puse las citas en torno a esto, no tengo evidencia de que el Sr. Fielding hable de esta manera o haya dicho esas palabras en este orden). En cualquier caso, con el tiempo, las personas han visto su sabiduría y, por lo tanto, existieron un descanso API.
¿Cuáles son los recursos de descanso? Rutas? En mi opinión, hay dos partes esenciales de una API REST: tiene recursos (que podría llamar entidades, objetos, o algo más) y que actúe sobre estos recursos mediante solicitudes HTTP estándar con verbos HTTP estándar. Para comprender los recursos, debe comprender que las API REST están organizadas alrededor del URIS (identificadores de recursos uniformes) y que, en general, se centran en estas entidades. Para dejar de usar palabras abstractas, para el descanso de la API WP, las entidades que ciertamente reconocerá son actualmente: publicaciones, páginas, medios, comentarios, categorías, etiquetas y usuarios. Hay varios otros más abstractos con los que puede sentirse cómodo: publicar, publicar revisiones, taxonomías y tipos de publicaciones. La idea es que cada uno de estos recursos está en una determinada URL.
Si desea ver las publicaciones en un sitio de WordPress que actualmente ejecuta la API REST WP, puede acceder a www.example.com/wp-json/wp/v2/posts/ y verá JSON GROSS de las últimas publicaciones de blog de el sitio respectivo. En general, un descanso funcionará para una raíz. En el caso de la API REST WP, esa raíz es la URL de su sitio de WordPress, por ejemplo, wpshout.com seguido por/wp-json/wp/v2/. Por lo tanto, todos los recursos estarán en “rutas” en relación con wpshout.com/wp-json/wp/v2. Entonces, el recurso post es en / publicaciones /, lo que podría decirse que es la “ruta” de ese recurso.
Esto significa que si desea ver las publicaciones en un sitio de WordPress que actualmente ejecuta la API REST WP, puede acceder a www.example.com/wp-json/wp/v2/posts/ y verá el JSON bruto desde el Publicaciones de blog más recientes del sitio respectivo. Y para llegar a una sola entidad, solo tiene que agregar su identificación en la ruta. Entonces, para ver la publicación con el ID 1111, iría a www.example.com/wp-json/wp/v2/posts/1111. VERBOS ESTÁNDAR REST: Obtenga, ponga, ponga, parche, elimine, aunque desde un punto de vista técnico hay 9 métodos para solicitar HTTP (que yo llamo verbos), alguna vez he visto solo cinco implementados para hacer acciones con un descanso. Esto se debe al hecho de que los métodos REST son bastante buenos en “Raw”. RAW es un acrónimo común que significa creado, leer, actualizar, eliminar: las cuatro operaciones obvias que alguien quiere hacer con un dato. Cuatro operaciones no necesitan 9 tipos de solicitudes. Pero hay uno más. En cualquier caso, los cinco métodos HTTP en la mayoría de las API son:
Obtenga que se use para leer datos. Las solicitudes se obtienen, dentro y fuera de los contextos REST, se consideran “solo para leer”.
Publicación que generalmente se usa para crear nuevos datos. A veces la publicación se usa para actualizar, pero en general, “las mejores prácticas” dice que use …
Ponga o parche para la actualización de datos. ¿Por qué dos? Porque a veces desea reemplazarlo por completo cuando puede, y a veces solo desea reemplazar o cambiar un valor de dos parche. Las operaciones de actualización son las menos estandarizadas en la práctica, porque el soporte de Put and Patch no es tan universal como Get, Post y Delete. Apenas parece valer una frase de explicación.
Vinculando el verbo a las rutas para la gran victoria aquí es la historia básica de cómo usaría la API REST WP para realizar algunas operaciones comunes de WordPress. Probablemente hará otras solicitudes, pero esta historia destaca las partes más importantes del resto.
Llegar a / publicaciones / para ver una lista de todas las publicaciones.
Publique muchos datos sobre una nueva publicación en / publicaciones / para crear una nueva. Devolverá el recurso post que acaba de crear con su identificación. Por simplicidad, suponga que la identificación fue 123.
Publicar en /publicaciones /123 para actualizar la publicación recientemente creada. (Put y Patch son más “correctos” que la publicación, por lo que los especifiqué arriba. La API WP usa POST porque es mucho menos inquietante con PHP y varias configuraciones del servidor que las otras dos).


Obtener /publicar /123 para ver la Posta apenas completada.
Elimine AT /Publics /123 porque te diste cuenta de que la publicación no era muy buena y que realmente no lo quieres.
¿Tiene sentido?
Otras consideraciones: formato de datos, autenticación y otras funciones, ¡oh, Dios mío!Espero que hasta ahora se sienta más claro sobre qué es y lo que realmente significa.Pero solo comencé a rascar la superficie de un campo bastante profundo de estudio y práctica.Entonces, antes de partir, quiero incluir algunas cosas de separación que aparecen a medida que se profundiza en las API REST.JSON: ¿Un solo formato para gobernarlos a todos?Las API descansan como término, sin embargo, no necesita hablar JSON.Las API de REST XML son comunes.Aunque el proyecto se llama “API WP REST”, el hecho de que el complemento y la representación final, como aterriza en el núcleo de WordPress, es probable que sea solo JSON.El más común es que el resto del resto hablará por los no iniciados, este es un formato de datos con muchos aparatos ortopédicos, algunos soportes cuadrados y respeto dictatorial por comas estrictas.
Las API descansan como término, sin embargo, no necesita hablar JSON. Las API de REST XML son comunes. Además, bastante comunes son las API REST que pueden hablar XML y JSON y, a veces, incluso más formatos. Para WordPress, no es probable que esto suceda. Pero es bastante común en otro lugar. Autenticación: para saber quién es alguien, es complicado … HTTP y REST son protocolos de “apatride”, su significado exacto no es súper e importante y, para ser completamente honesto, no estoy seguro de entenderlos lo suficientemente bien como para explicarlo. Lo principal que significa es que el navegador envía “cookies” al falso “estado”, el conocimiento de un usuario y la continuidad de sus datos, en la mayoría de las aplicaciones basadas en el servidor. Este hacke de galletas funciona para los navegadores, pero cuando se involucra otra capa (el resto, por ejemplo), las cosas se vuelven más difíciles. La versión corta de lo que esto significa es que piensa más en una estrategia de autenticación cuando hablas con un descanso que cuando se trata de un sitio básico de WordPress. Términos como “autenticación básica” y “OAuth” aparecen mucho si intenta hacer algo más complicado que leer datos de un descanso. Solo una cosa que saber. Las operaciones complicadas con el resto pueden ser extrañas … mucho descanso es bastante genial. Pero debido a que toda la idea está orientada alrededor de las operaciones “crueles”, las operaciones un poco más complicadas se vuelven complicadas de considerar. Por ejemplo, si se elimina un usuario y quiero eliminar todos los datos que ha creado, ¿hacer esto manualmente con 8000 solicitudes de eliminación diferentes a la API REST para cada recurso que poseo?
¿O una operación que envía una eliminación a /usuarios /7 siempre debe eliminar sus datos asociados? La respuesta no es clara. La mayoría de las entidades de datos han adjuntado entidades con sus propios datos. Una respuesta a Get /Posts /123 ¿Deberían todos los datos sobre las categorías en una publicación o el solicitante debe hacer otra solicitud para obtener /categorías /71 para obtener más información sobre la categoría? Además, esto no dice nada sobre el deseo de desencadenar una aplicación para realizar operaciones complejas, por ejemplo, escanear todas las publicaciones de blog para escribir errores, que no son recursos en sí, sino que llega a cientos de diferentes. Cuando se realizan. Nuevamente, no hay un estándar universal o “respuesta correcta”. Finalmente, la mayoría de las entidades de datos tienen entidades adjuntas a sus propios datos. Las publicaciones tienen categorías en WordPress, por ejemplo. Una respuesta a Get /Posts /123 ¿Deberían todos los datos sobre las categorías en una publicación o el solicitante debe hacer otra solicitud para obtener /categorías /71 para obtener más información sobre la categoría?

Copyright statement: Unless otherwise noted, this article is Collected from the Internet, please keep the source of the article when reprinting.

Check Also

gkOVSBm5B8SgiXmo

Shopify vs WooCommerce – ¿Cuál es la mejor plataforma?(Comparación)

Shopify vs WooCommerce

Leave a Reply

Your email address will not be published. Required fields are marked *