Tuesday, January 30, 2024

[SOLVED] appending multiple querystring variables with curl

Issue

I keep getting a 401 response when I try to use authentication = ApiKeyAuthentication() in my ModelResource. I looked at href="https://stackoverflow.com/questions/7814128/django-tastypie-how-to-authenticate-with-api-key">Django Tastypie: How to Authenticate with API Key and he uses the get parameters to solve his issue. If I try use get parameters it picks up username but not api_key!

This works in browser

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

Sending via curl in terminal doesn't pickup api_key parameter

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

Why when using curl and appending 2 querystring parameters like ?username=darren&api_key=xxxxx does it only pickup the first one. Is this not the correct way?


Solution

Typing & in the command line means run the preceding command in the background (thanks @Maccesch), because of this anything after the & is being treated as a new command.

Try wrapping the url in quotes.

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



Answered By - rockingskier
Answer Checked By - Terry (WPSolving Volunteer)