Cómo consultar con datos de entrada

Los servicios Web pueden aceptar la entrada de un OBTENER o una POSTE. Para los propósitos aquí, se utiliza un OBTENER solicitud para aceptar una URL para su estado del sitio servicio web.

Este listado muestra el nuevo estado del sitio servicio web, con el código añadido para recuperar la URL de la cadena de consulta.

lt; php $ cabecera = "Content-Type: application / json"? -header ($ header), si (isset ($ _ GET ['siteURL'])) {$ site = $ _GET ['siteURL'] -} else {json_encode impresión (array ("siteStatus" => "Ningún sitio especificado")) - salida -} $ dblink = mysqli_connect ('localhost', 'USUARIO', 'password', 'sitios') - if (! $ dblink) {$ fila = array ("siteStatus" => "Error de base de datos") - json_encode print ($ fila) -} else {$ escSite = mysqli_real_escape_string ($ dblink, $ sitio) - $ query = "SELECT siteStatus DE siteStatus DONDE siteURL = '{$ escSite}' "- if ($ resultado = mysqli_query ($ dblink, $ consulta)) {$ row = $ result-> fetch_array (MYSQLI_ASSOC) -si (is_null ($ fila)) {$ fila = array (" siteStatus "=>" Error - Sitio no encontrado ") -}} else {$ fila = array (" siteStatus "=>" Error General ") -} json_encode print ($ fila) -mysqli_close ($ dblink) -} // ? condición else End (para la conexión de base de datos)> La adición de código principal de este nuevo servicio web es en la parte superior: if (isset ($ _ GET ['siteURL'])) {$ site = $ _GET ['siteURL'] -} else {json_encode impresión (array ("siteStatus" => "Ningún sitio especificado")) - salida-}

Este código comprueba si el Sitio URL variable es en la cadena de consulta y si lo es, lo establece en el $ sitio variable.

Más adelante en el código, el $ sitio variable se escapó por lo que es seguro de usar en una consulta, y la propia consulta se cambia a utilizar esa variable recién escapado:

$ escSite = mysqli_real_escape_string ($ dblink, $ sitio) - $ query = "SELECT siteStatus DESDE DONDE siteStatus siteURL = '{$ escSite}'" -

Con ese código en el lugar, el servicio web puede ser llamado de nuevo. Esta vez, sin embargo, en lugar de cargar el servicio web como http: //localhost/sitestatus.php, es necesario incluir la dirección URL para comprobar como parte de la dirección, así:

http: //localhost/sitestatus.php siteURL = http% 3A% 2F% 2Fbraingia.org

¡Pero espera! ¿Qué es todo eso % 3A% 2F% 2F en el http://braingia.org URL? Esos son los personajes con codificación URL. Ciertos personajes están reservadas o restringidas por el uso de una dirección URL. Lo que pasa es que : // son algunos de esos personajes restringidas. Por lo tanto, necesitan ser convertidos (o escapado) para ser un URL seguro de usar.

En cualquier caso, cuando se carga esa URL, el sitio se busca en la base de datos y se devuelve su estado.




» » » » Cómo consultar con datos de entrada