2012-06-11 18 views
24

Sigo recibiendo una respuesta 401 cuando trato de usar la autenticación = ApiKeyAuthentication() en mi ModelResource. Miré Django Tastypie: How to Authenticate with API Key y él usa los parámetros get para resolver su problema. Si intento usar los parámetros get, toma nombre de usuario pero no api_key.anexando múltiples variables querystring con curl

Esto funciona en el navegador

http://127.0.0.1:8000/api/v1/spot/8/?username=darren&api_key=9999d318e43b8055ae32d011be5b045ad61dad50 

envío a través de rizo en la terminal no parámetro api_key recogida

curl --dump-header - http://127.0.0.1:8000/api/v1/spot/8/?username=darren&api_key=9999d318e43b8055ae32d011be5b045ad61dad50 

¿Por qué cuando se utiliza rizo y añadiendo 2 parámetros de cadena de consulta como lo hace ?username=darren&api_key=9999d318e43b8055ae32d011be5b045ad61dad50 solo recoge el primero. ¿No es esta la manera correcta?

Respuesta

75

Escribir & en la línea de comando significa ejecutar el comando anterior en el fondo (gracias @Maccesch), debido a esto cualquier cosa después de que el & se trate como un nuevo comando.

Intenta envolver la URL entre comillas.

curl --dump-header - "http://127.0.0.1:8000/api/v1/spot/8/?username=darren&api_key=9999d318e43b8055ae32d011be5b045ad61dad50"

+3

Tiene usted razón, '' y los medios para ejecutar el comando que precede en el fondo. La cadena después se considera un nuevo comando. – Maccesch

+0

@Maccesch, gracias, tuve la sensación de que era eso cuando estaba ejecutando una instancia de Apache Solr en mi VM local. – rockingskier

+0

@rockingskier, ¡me has salvado la vida! ¡Envolver la URL entre comillas! –