Comments (1)
Hey,
That's right, the code example in the docs is a little lacking.
This code definitely shouldn't be in settings.py.
The import change is correct.
What you should do is declare these classes in a permissions.py file of yours inside an app folder (eg an accounts app of that's what you have), and then use that HasAPIKey class of yours in the rest of your code.
Another semi-hacky way is to import KeyParser somewhere (settings.py might work) and set its keyword class attribute.
KeyParser.keyword = "API-KEY"
I reckon this task could be easier if we had a setting similar to API_KEY_CUSTOM_HEADER
, but for the keyword.
Hope this helps!
If you're up to help fixing the docs in a way that works for you, that would be much appreciated.
from djangorestframework-api-key.
Related Issues (20)
- Ensured Django 4 support HOT 3
- Getting 'Authentication credentials were not provided' in test project
- `KeyParser` should match `keyword` exactly HOT 1
- get_usable_keys() is empty
- APIKey generation in `CreateView` on a per-User basis?
- Best way to create and validate keys?
- Import not working
- Infinite loop with Django, MongoDB and Djongo with HasApiKey - Solved? HOT 1
- API_KEY_CUSTOM_HEADER not working HOT 2
- Migration file in `site-packages` folder for generating a custom API Key model HOT 1
- Is the API_KEY generated always unique? HOT 1
- IntegrityError using AbstractAPIKey
- Cannot authenticate with API key HOT 5
- API Key object pk/id created with api-key and hashed api key HOT 1
- About second to permission check HOT 1
- There is no clearly documented way to manually validate an API key HOT 2
- Hide DRF's browsable API page title when API Key is missing/invalid HOT 3
- Expired APIKey's are considered as valid APIKey
- Making invalid API Key raise 403 forbidden
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from djangorestframework-api-key.