0% encontró este documento útil (0 votos)
233 vistas20 páginas

1.3.3.1 Parsing JSON With A Python Application

Este documento describe los pasos para crear una aplicación en Python que utiliza la API de MapQuest Directions para obtener información de viaje entre dos ubicaciones ingresadas por el usuario. Los objetivos incluyen obtener una clave de API de MapQuest, importar los módulos necesarios como requests y urllib, construir la URL de solicitud con las variables de origen, destino y clave, probar la solicitud JSON y extraer el código de estado, e iterar a través de los datos JSON para generar instrucciones de viaje. El documento guía al lector a través de cada
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
233 vistas20 páginas

1.3.3.1 Parsing JSON With A Python Application

Este documento describe los pasos para crear una aplicación en Python que utiliza la API de MapQuest Directions para obtener información de viaje entre dos ubicaciones ingresadas por el usuario. Los objetivos incluyen obtener una clave de API de MapQuest, importar los módulos necesarios como requests y urllib, construir la URL de solicitud con las variables de origen, destino y clave, probar la solicitud JSON y extraer el código de estado, e iterar a través de los datos JSON para generar instrucciones de viaje. El documento guía al lector a través de cada
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 20

ESCUELA POLITÉCNICA NACIONAL

FACULTAD DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICAGESTIÓN DE


REDES DE TELECOMUNICACIONES
Parsing JSON with a Python Application

LABORATIRIO 1.3.3.1
NOMBRE: Jessica Calapaqui
FECHA: 02/Septiembre/2021

OBJETIVOS:
• Obtenga una clave de API de MapQuest.
• Importe los módulos necesarios.
• Cree variables de solicitud de API y construya una URL.
• Agregue la funcionalidad de entrada del usuario.
• Agregue una función de salida para que el usuario pueda finalizar la
aplicación.
• Muestra información del viaje para el tiempo, la distancia y el uso de
combustible.
• Itere a través de los datos JSON para extraer y generar las instrucciones.
• Muestra mensajes de error para entradas de usuario no válidas.

Paso 1: Demuestre la aplicación API de MapQuest Directions.

Su instructor puede demostrar la aplicación y mostrarle el guión que se utilizó para crearla. Además,
su instructor puede permitirle tener el script de solución, 08_parse-json_sol.py. Sin embargo,
creará este guión paso a paso en este laboratorio.

La aplicación solicita una ubicación de inicio y un destino. Luego solicita datos JSON de la API
MapQuest Directions, los analiza y muestra información útil.
Paso 2: Autenticar una solicitud RESTful.

Antes de crear la aplicación, deberá obtener una clave del sitio para desarrolladores de MapQuest,
lo que hará en el siguiente paso. Anteriormente, no usó autenticación para acceder a la API de
predicciones de ISS Pass. Sin embargo, muchas API requieren algún tipo de autenticación. La
autenticación de una solicitud RESTful se realiza de cuatro formas. Describe cada método a
continuación:

None:

Primero debes configurar el acceso a los recursos de tu API. Tu sistema API debe generar una
clave (key) y un secret key para cada cliente que requiera acceso a tus servicios. Cada vez que una
aplicación necesite consumir los datos de tu API, deberás enviar tanto la key como la secret key.

Este sistema es más seguro que los métodos anteriores, pero la generación de credenciales debe
ser manual y esto dificulta la escalabilidad de tu API. La automatización de generación e intercambio
de key’s es una de las razones principales por las que se desarrolló el método de autentificación
OAuth, que en el siguiente punto evaluaremos.

HTTP básico:

Esta es la forma más sencilla de asegurar tu API. Se basa principalmente en un nombre de usuario
y una contraseña para identificarte.

Para comunicar estas credenciales desde el cliente hasta el servidor, se debe realizar mediante
el encabezado HTTP Autorización (Authorization), según la especificación del protocolo HTTP.

Este método de autentificación está algo anticuado y puede ser un problema de seguridad en tu API
REST

Token:

En este método, el usuario se identifica al igual que con la autenticación básica, con sus
credenciales, nombre de usuario y contraseña. Pero en este caso, con la primera petición de
autentificación, el servidor generará un token basado en esas credenciales.

El servidor guarda en base de datos este registro y lo devuelve al usuario para que a partir de ese
momento no envíe más credenciales de inicio de sesión en cada petición HTTP. En lugar de las
credenciales, simplemente se debe enviar el token codificado en cada petición HTTP.

Open Authorization (OAuth):

OAuth 2.0 es un método de autorización utilizado por compañías como Google, Facebook, Twitter,
Amazon, Microsoft, etc. Su propósito es permitir a otros proveedores, servicios o aplicaciones, el
acceso a la información sin facilitar directamente las credenciales de los usuarios. Pero tranquilo,
únicamente accederán bajo la confirmación del usuario, validando la información a la que se le
autorizara acceder.

Para la API de MapQuest, utilizará la autenticación de token.

Paso 3: Obtenga una clave de API de MapQuest.


Complete los siguientes pasos para obtener una clave de API de MapQuest:
1. Ir a: https://developer.mapquest.com/

2. Hacer clic Inscribirse en la parte superior de la página.


3. Complete el formulario para crear una nueva cuenta. Para Empresa, ingresar Estudiante
de Cisco Networking Academy.

4. Después de hacer clic Inscríbeme, se le redirige a la Administrar claves página.

5. Hacer clic Aprobar todas las claves y expandir Mi aplicación.

6. Copia tu Clave del consumidor al Bloc de notas para uso futuro. Esta será la clave que
utilizará para el resto de este laboratorio.

Nota: MapQuest puede cambiar el proceso para obtener una clave. Si los pasos anteriores ya no
son válidos, busque "pasos para generar la clave de API de mapquest".
Paso 4: Importación de módulos para la aplicación.
Para comenzar su secuencia de comandos para analizar datos JSON, deberá importar dos módulos
de la biblioteca de Python: requests y urllib.parse. El módulo requests proporciona funciones para
recuperar datos JSON de una URL. El módulo urllib.parse proporciona una variedad de funciones
que le permitirán analizar y manipular los datos JSON que recibe de una solicitud a una URL.

Abra un archivo de script en blanco y guárdelo como 08_parse-json1.py.

Importar los módulos urllib.parse y requests.


import urllib.parse
import requests

Paso 5: crea variables para la solicitud de API.


El primer paso para crear su solicitud de API es construir la URL que su aplicación usará para
realizar la llamada. Inicialmente, la URL será la combinación de las siguientes variables:

main_api - la URL principal a la que está accediendo

orig - el parámetro para especificar su punto de origen

dest - el parámetro para especificar su destino l

key - la clave de API de MapQuest que recuperó del sitio web del desarrollador.

a. Cree variables para construir la URL que se enviará en la solicitud. Copie su clave
MapQuest en la variable clave.
main_api = "https://www.mapquestapi.com/directions/v2/route?"
orig = "Washington"
dest = "Baltimaore"
key = "your_api_key"

b. Combina las cuatro variables main_api, orig, dest, y key para formatear la URL solicitada.
Utilizar el urlencode método para formatear correctamente el valor de la dirección. Esta
función construye la parte de parámetros de la URL y convierte posibles caracteres
especiales en el valor de la dirección (por ejemplo, espacio en "+" y una coma en "% 2C").
url = main_api + urllib.parse.urlencode({"key": key, "from":orig, "to":dest})

c. Cree una variable para contener la respuesta de la URL solicitada e imprima los datos JSON
devueltos. los json_data La variable contiene una representación de Diccionario de Python
de la respuesta json del método get del módulo requests. La declaración print se utiliza
para verificar los datos devueltos.
json_data = requests.get(url).json()
print(json_data)
Paso 6: prueba la solicitud de URL.
Ejecute su 08_json-parse1.py script y verifique que funcione. Solucione los problemas de su
código, si es necesario. Aunque su resultado puede ser ligeramente diferente, debería obtener una
respuesta JSON similar a la siguiente.

{'route': {'distance': 38.089, 'hasHighway': True, 'hasUnpaved': False, 'hasAccessRestriction': False,


'options': {'mustAvoidLinkIds': [], 'maxWalkingDistance': -1, ' manmaps ':' true ',' urbanAvoidFactor ':
-1,' stateBoundaryDisplay ': True,' cyclingRoadFactor ': 1,' routeType ':' FASTEST ','
countryBoundaryDisplay ': True,' drivingStyle ': 2,' highwayEfficiency ': 22, 'narrativeType': 'text',
'routeNumber': 0, 'tryAvoidLinkIds': [], 'generalize': -1, 'returnLinkDirections': False,
'doReverseGeocode': True, 'evitarTripIds': [], ' timeType ': 0,' sideOfStreetDisplay ': True,'
filterZoneFactor ': -1,' walkingSpeed ': -1, 'useTraffic': False, 'unit': 'M', 'tr

Paso 7: imprima la URL y verifique el estado de la solicitud JSON


Ahora que sabe que la solicitud JSON está funcionando, puede agregar más funciones a la
aplicación. una.

a. Guarde su secuencia de comandos como 08_json-parse2.py.


b. Borrar el imprimir (json_data) declaración, ya que ya no es necesario probar que la
solicitud tiene el formato correcto.
c. Agregue las declaraciones a continuación, que harán lo siguiente:
o Imprima la URL construida para que el usuario pueda ver la solicitud exacta realizada por
la aplicación.
o Analizar los datos JSON para obtener el código de estado valor.
o Inicie un bucle if que verifique una llamada exitosa, cuyo valor es 0. Agregue una
declaración de impresión para mostrar los código de estado valor y su significado. Los \
norte agrega una línea en blanco debajo de la salida. imprimir ("URL:" + (url))
print("URL: " + (url))
json_data = requests.get(url).json()
json_status = json_data["info"]["statuscode"]
if json_status == 0:
print("API Status: " + str(json_status) + " = A successful route
call.\n")

Más adelante en este lab, agregará elif y demás declaraciones para diferentes códigos de estado
valores.

Paso 8: Probar el estado y los comandos de impresión de URL.


Ejecute su 08_json-parse2.py script y verifique que funcione. Solucione los problemas de su
código, si es necesario. Debería obtener un resultado similar al siguiente.
URL:
https://www.mapquestapi.com/directions/v2/route?key=your_api_key&to=Baltimore&fro
m=Washington
API Status: 0 = A successful route call.

Paso 9: agregue la entrada del usuario para la ubicación de inicio y el


destino.
Hasta este punto, ha utilizado Washington y Baltimore como valores estáticos para las variables de
ubicación. Sin embargo, la aplicación requiere que el usuario ingrese estos. Complete los siguientes
pasos para actualizar su aplicación:

a. Guarde su secuencia de comandos como 08_json-parse3.py.


b. Eliminar el actual orig y dest variables.
c. Reescribir el orig y dest estar dentro de un bucle while en el que solicita la entrada del
usuario para la ubicación de inicio y el destino. El bucle while permite que el usuario
continúe realizando solicitudes para diferentes direcciones.
d. Asegúrese de que todo el código restante esté sangrado dentro del ciclo while.
Paso 10: Pruebe la funcionalidad de entrada del usuario.
Ejecute su 08_json-parse3.py script y verifique que funcione. Solucione los problemas de su
código, si es necesario. Debería obtener un resultado similar al que se muestra a continuación.
Agregará la funcionalidad para salir en el siguiente paso. Por ahora, ingrese Ctrl + C para salir de
la aplicación.
Starting Location: Washington
Destination: Baltimore
URL:
https://www.mapquestapi.com/directions/v2/route?key=your_api_key&from=Washington&
to=Baltimore
API Status: 0 = A successful route call.
Starting Location: <Ctrl+C>

Paso 11: agregue la funcionalidad de salida a la aplicación.


En lugar de entrar Ctrl + C para salir de la aplicación, agregará la capacidad para que el usuario
ingrese q o dejar como palabras clave para salir de la aplicación. Complete los siguientes pasos
para actualizar su aplicación: una.

a. Guarde su secuencia de comandos como 08_json-parse4.py. B


b. Agregue una instrucción if después de cada variable de ubicación para verificar si el usuario
ingresa q o quit, Como se muestra abajo.
while True:
orig = input("Starting Location: ")
if orig == "quit" or orig == "q":
break
dest = input("Destination: ")
if dest == "quit" or dest == "q":
break

Paso 12: Pruebe la funcionalidad para salir.


Ejecute su 08_json-parse4.py script cuatro veces para probar cada variable de ubicación. Verifique
que ambos quit y q finalizará la aplicación. Solucione los problemas de su código, si es necesario.
Debería obtener un resultado similar al siguiente.
Starting Location: q
>>>
Starting Location: quit
>>>
Starting Location: Washington
Destination: q
>>>
Starting Location: Washington
Destination: quit
Paso 13: Analizar y mostrar algunos datos sobre el viaje.
a. Copie su URL en su navegador web. Si contrae todos los datos JSON, verá que hay dos
diccionarios raíz: ruta e info.

b. Ampliar la ruta diccionario e investigar los datos enriquecidos. Hay valores para indicar si la
ruta tiene carreteras de peaje, puentes, túneles, carreteras, cierres o cruces hacia otros países.
También debería ver los valores para la distancia, el tiempo total que tomará el viaje y el uso
de combustible, como se resalta a continuación. Para analizar y mostrar esto, especifique el
ruta diccionario y seleccione el par clave / valor que desea imprimir.

c. Guarde su secuencia de comandos como 08_json-parse5.py.


d. Debajo del comando de impresión de estado de la API, agregue declaraciones de impresión
que muestren las ubicaciones desde y hasta, así como la formattedTime, distancia, y
combustible usado teclas.
e. Agregue una declaración de impresión que mostrará una línea doble antes de la próxima
solicitud de una ubicación de inicio, como se muestra a continuación.

if json_status == 0:
print("API Status: " + str(json_status) + " = A successful
route call.\n")
print("=============================================")
print("Directions from " + (orig) + " to " + (dest))
print("Trip Duration: " + (json_data["route"]["formattedTime"]))
print("Miles: " + str(json_data["route"]["distance"]))
print("Fuel Used (Gal): " + str(json_data["route"]["fuelUsed"]))
print("=============================================")
f. Correr 08_json-parse5.py para ver el siguiente resultado:
Starting Location: Washington
Destination: Baltimore
URL:
https://www.mapquestapi.com/directions/v2/route?to=Baltimore&key=Your_api_key&fro
m=Washington
API Status: 0 = A successful route call.
=============================================
Directions from Washington to Baltimore
Trip Duration: 00:49:19
Miles: 38.089
Fuel Used (Gal): 1.65
=============================================
Starting Location: q
g. MapQuest usa el sistema imperial y no hay un parámetro de solicitud para cambiar datos al
sistema métrico. Por lo tanto, probablemente debería convertir su aplicación para mostrar
valores métricos, como se muestra a continuación.
print("Kilometers: " + str((json_data["route"]["distance"])*1.61))
print("Fuel Used (Ltr): " + str((json_data["route"]["fuelUsed"])*3.78))

h. Ejecute el modificado 08_json-parse5.py script para ver el siguiente resultado:


Starting Location: Washington
Destination: Baltimore
URL:
https://www.mapquestapi.com/directions/v2/route?key=Your_api_key&to=Baltimore
&from=Washington
API Status: 0 = A successful route call.
=============================================
Directions from Washington to Baltimore
Trip Duration: 00:49:19
Kilometers: 61.32329
Fuel Used (Ltr): 6.236999999999999
=============================================
Starting Location: q
>>>

i. Utilizar el "{:. 2f} ". Formato argumento para formatear los valores flotantes a 2 lugares
decimales antes de convertirlos en valores de cadena, como se muestra a continuación. Cada
declaración debe estar en una línea.
print("Kilometers: " +
str("{:.2f}".format((json_data["route"]["distance"])*1.61)))
print("Fuel Used (Ltr): " +
str("{:.2f}".format((json_data["route"]["fuelUsed"])*3.78)))
Paso 14: Pruebe la funcionalidad de análisis y formato.
Ejecute su 08_json-parse5.py script para verificar que funciona. Solucione los problemas de su
código, si es necesario. Asegúrese de tener todos los paréntesis de apertura y cierre adecuados.
Debería obtener un resultado similar al siguiente.
Starting Location: Washington
Destination: Baltimore
URL:
https://www.mapquestapi.com/directions/v2/route?key=Your_api_key&to=Baltimore&fro
m=Washington
API Status: 0 = A successful route call.
=============================================
Directions from Washington to Baltimore
Trip Duration: 00:49:19
Kilometers: 61.32
Fuel Used (Ltr): 6.24
=============================================
Starting Location: q

Paso 15: Inspeccione los datos JSON de las maniobras.


a. Ahora está listo para mostrar las instrucciones paso a paso desde la ubicación de inicio hasta
el destino. Localizar el piernas lista dentro del diccionario de ruta. los piernas La lista incluye
un diccionario grande con la mayoría de los datos JSON.
b. Encuentra el maniobras enumere y contraiga cada uno de los siete diccionarios que contiene,
como se muestra a continuación.
c. Expanda el primer diccionario del maniobras lista. Cada diccionario contiene un narrativa con
un valor, como "Empiece hacia el norte ...", como se muestra a continuación. Debe analizar los
datos JSON para extraer el valor de la narrativa para mostrar dentro de su aplicación.

Paso 16: agregue un bucle for para iterar a través de los datos JSON de
maniobras.
Complete los siguientes pasos para actualizar su aplicación:

a. Guarde su secuencia de comandos como 08_json-parse6.py.


b. Agregue un bucle for debajo de la segunda declaración de impresión de doble línea. El bucle
for itera a través de cada maniobras lista y hace lo siguiente:
1) Imprime el narrativa valor.
2) Convierte millas a kilómetros con * 1,61.
3) Formatea el valor del kilómetro para imprimir solo dos lugares decimales con "{:. 2f} ".
Formato función.
c. Agregue una declaración de impresión que mostrará una línea doble antes de la próxima
solicitud de una ubicación de inicio, como se muestra a continuación.

Nota: La segunda instrucción de impresión de doble línea no tiene sangría dentro del bucle for. Por
lo tanto, es parte de la declaración if anterior que verifica la código de estado parámetro.
print("Fuel Used (Ltr): " +
str("{:.2f}".format((json_data["route"]["fuelUsed"])*3.78)))
print("=============================================")
for each in json_data["route"]["legs"][0]["maneuvers"]:
print((each["narrative"]) + " (" + str("{:.2f}".format((each["distance"])*1.61) +
" km)"))
print("=============================================\n")
Paso 17: Actividad: pruebe la iteración JSON.
Ejecute su 08_json-parse6.py script y verifique que funcione. Solucione los problemas de su
código, si es necesario. Debería obtener un resultado similar al siguiente:
Starting Location: Washington
Destination: Baltimore
URL:
https://www.mapquestapi.com/directions/v2/route?key=Your_api_key&to=Baltimore&fro
m=Washington
API Status: 0 = A successful route call.
Directions from Washington to Baltimore
Trip Duration: 00:49:19
Kilometers: 61.32
Fuel Used (Ltr): 6.24
=============================================
Start out going north on 6th St/US-50 E/US-1 N toward Pennsylvania Ave/US-1 Alt
N. (1.28 km)
Turn right onto New York Ave/US-50 E. Continue to follow US-50 E (Crossing into
Maryland). (7.51 km)
Take the Balt-Wash Parkway exit on the left toward Baltimore. (0.88 km)
Merge onto MD-295 N. (50.38 km)
Turn right onto W Pratt St. (0.86 km)
Turn left onto S Calvert St/MD-2. (0.43 km)
Welcome to BALTIMORE, MD. (0.00 km)
=============================================
Starting Location: q
Paso 18: Verifique la entrada de usuario no válida.
Ahora está listo para agregar una función final a su aplicación para informar un error cuando el
usuario ingresa datos no válidos. Recuerde que inició un bucle if para asegurarse de que el código
de estado es igual a 0 antes de analizar los datos JSON:
json_status = json_data["info"]["statuscode"]
if json_status == 0:
print("API Status: " + str(json_status) + " = A successful route call.\n")

a. Pero que pasa si el código de estado no es igual a 0? Por ejemplo, el usuario puede ingresar
una ubicación no válida o puede que no ingrese una o más ubicaciones. Si es así, la aplicación
muestra la URL y solicita una nueva ubicación de inicio. El usuario no tiene idea de lo que pasó.
Pruebe los siguientes valores en su aplicación. Debería ver resultados similares.
Starting Location: Washington
Destination: Beijing
URL:
https://www.mapquestapi.com/directions/v2/route?to=Beijing&key=your_api_key&from=
Washington
Starting Location: Washington
Destination: Balt
URL:
https://www.mapquestapi.com/directions/v2/route?to=Balt&key=your_api_key&from=Was
hington
Starting Location: Washington
Destination:
URL:
https://www.mapquestapi.com/directions/v2/route?to=&key=your_api_key&from=Washing
ton
Starting Location: q
b. Guarde su secuencia de comandos como 08_jsont-parse7.py.
c. Para proporcionar información de error cuando esto suceda, agregue elif y demás
declaraciones a su bucle if. Después de la última declaración de impresión de doble línea debajo
del si json_status == 0, agregue lo siguiente elif y demás declaraciones:
for each in json_data["route"]["legs"][0]["maneuvers"]:
print((each["narrative"]) + " (" +
str("{:.2f}".format((each["distance"])*1.61) + " km)"))
print("=============================================\n")
elif json_status == 402:
print("**********************************************")
print("Status Code: " + str(json_status) + "; Invalid user inputs for one or both
locations.")
print("**********************************************\n")
else:
print("************************************************************************")
print("For Staus Code: " + str(json_status) + "; Refer to:")
print("https://developer.mapquest.com/documentation/directions-api/status-codes")
print("************************************************************************\n
")

los elif la declaración se imprime si el código de estado el valor es 402 para una ubicación no
válida. los demás impresiones de declaraciones para todos los demás código de estado valores,
como sin entrada para una o más ubicaciones. La instrucción else finaliza el ciclo if / else y
devuelve la aplicación al ciclo while.
Paso 19: Actividad: pruebe la funcionalidad completa de la aplicación.
Ejecute su 08_json-parse7.py script y verifique que funcione. Solucione los problemas de su
código, si es necesario. Pruebe todas las funciones de la aplicación. Debería obtener un resultado
similar al siguiente:
Starting Location: Washington
Destination: Baltimore
URL:
https://www.mapquestapi.com/directions/v2/route?key=your_api_key&from=Washington&
to=Baltimore
API Status: 0 = A successful route call.
Directions from Washington to Baltimore
Trip Duration: 00:49:19
Kilometers: 61.32
Fuel Used (Ltr): 6.24
=============================================
Start out going north on 6th St/US-50 E/US-1 N toward Pennsylvania Ave/US-1 Alt
N. (1.28 km)
Turn right onto New York Ave/US-50 E. Continue to follow US-50 E (Crossing into
Maryland). (7.51 km)

Take the Balt-Wash Parkway exit on the left toward Baltimore. (0.88 km)
Merge onto MD-295 N. (50.38 km)
Turn right onto W Pratt St. (0.86 km)
Turn left onto S Calvert St/MD-2. (0.43 km)
Welcome to BALTIMORE, MD. (0.00 km)
=============================================
Starting Location: Moscow
Destination: Beijing
URL:
https://www.mapquestapi.com/directions/v2/route?key=your_api_key&from=Moscow&to=B
eijing
API Status: 0 = A successful route call.
Directions from Moscow to Beijing
Trip Duration: 84:31:10
Kilometers: 7826.83
Fuel Used (Ltr): 793.20
=============================================
Start out going west on Кремлёвская набережная/Kremlin Embankment. (0.37 km)
Turn slight right onto ramp. (0.15 km)
Turn slight right onto Боровицкая площадь. (0.23 km)
[output omitted]
Turn left onto 广场东侧路/E. Guangchang Rd. (0.82 km)
广场东侧路/E. Guangchang Rd becomes 东长安街/E. Chang'an Str. (0.19 km)
Welcome to BEIJING. (0.00 km)
=============================================
Starting Location: Washington
Destination: Beijing
URL:
https://www.mapquestapi.com/directions/v2/route?key=your_api_key&from=WashingtonT
urn+right+onto+%E5%89%8D%E9%97%A8%E8%A5%BF%E5%A4%A7%E8%A1%97%2FQianmen+West+Stree
t.+%281.01+km%29&to=Beijing
****************************************************************
Status Code: 402; Invalid user inputs for one or both locations.
****************************************************************
Starting Location: Washington
Destination: Balt
URL:
https://www.mapquestapi.com/directions/v2/route?key=your_api_key&from=Washington&
to=Balt
************************************************************************
Status Code: 602; Refer to:
https://developer.mapquest.com/documentation/directions-api/status-codes
Starting Location: Washington
Destination:
URL:
https://www.mapquestapi.com/directions/v2/route?key=your_api_key&from=Washington&
to=
************************************************************************
Status Code: 611; Refer to:
https://developer.mapquest.com/documentation/directions-api/status-codes
************************************************************************
Starting Location: q

También podría gustarte