добавление нескольких переменных строки запроса с помощью curl

Я продолжаю получать ответ 401, когда пытаюсь использовать аутентификацию = ApiKeyAuthentication() в моем ModelResource. Я просмотрел Django Tastypie: как пройти аутентификацию с помощью ключа API. и он использует параметры get для решения своей проблемы. Если я попытаюсь использовать параметры получения, он подберет имя пользователя, но не api_key!

Это работает в браузере

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

Отправка через curl в терминале не принимает параметр api_key

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

Почему при использовании curl и добавлении 2 параметров строки запроса, таких как ?username=darren&api_key=9999d318e43b8055ae32d011be5b045ad61dad50, он выбирает только первый. Разве это не правильный путь?


person darren    schedule 11.06.2012    source источник


Ответы (1)


Ввод & в командной строке означает выполнение предыдущей команды в фоновом режиме (спасибо @Maccesch), из-за этого все после & обрабатывается как новая команда.

Попробуйте заключить адрес в кавычки.

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

person rockingskier    schedule 11.06.2012
comment
Вы правы, & означает запуск предыдущей команды в фоновом режиме. Строка после этого считается новой командой. - person Maccesch; 12.06.2012
comment
@Maccesch, ура, у меня было ощущение, что это было, когда я запускал экземпляр Apache Solr на своей локальной виртуальной машине. - person rockingskier; 12.06.2012
comment
@rockingskier, ты спас мне жизнь! Заключить URL в кавычки! - person Highway of Life; 05.04.2013
comment
В зависимости от ОС и сборки curl это также могут быть одинарные или двойные кавычки. (Пришлось использовать синглы, чтобы заставить ODATA ?$top=1 работать на OSX.) - person Jeremy Murray; 08.12.2015