28

I keep getting a 401 response when I try to use authentication = ApiKeyAuthentication() in my ModelResource. I looked at 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=9999d318e43b8055ae32d011be5b045ad61dad50

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=9999d318e43b8055ae32d011be5b045ad61dad50

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

Community
  • 1
  • 1
darren
  • 17,033
  • 16
  • 55
  • 79

1 Answers1

84

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=9999d318e43b8055ae32d011be5b045ad61dad50"

rockingskier
  • 7,996
  • 3
  • 37
  • 49