mirror of
https://github.com/peeringdb/peeringdb.git
synced 2024-05-11 05:55:09 +00:00
Docs 202109 (#1067)
* module docstrings * db schema graph * dev docs first pass * dev docs pass 2 * add generated notification to top of generated docs files * linting * regen docs Co-authored-by: Stefan Pratter <stefan@20c.com> Co-authored-by: Sunshine Buchholz <sunshine@20c.com>
This commit is contained in:
80
docs/dev/modules/rest_throttles.py.md
Normal file
80
docs/dev/modules/rest_throttles.py.md
Normal file
@@ -0,0 +1,80 @@
|
||||
Generated from rest_throttles.py on 2021-10-15 07:56:57.376975
|
||||
|
||||
# peeringdb_server.rest_throttles
|
||||
|
||||
Custom rate limit handlers for the REST API.
|
||||
|
||||
# Classes
|
||||
---
|
||||
|
||||
## FilterDistanceThrottle
|
||||
|
||||
```
|
||||
FilterDistanceThrottle(peeringdb_server.rest_throttles.FilterThrottle)
|
||||
```
|
||||
|
||||
Rate limiting for ?distance= queries.
|
||||
|
||||
|
||||
## FilterThrottle
|
||||
|
||||
```
|
||||
FilterThrottle(rest_framework.throttling.SimpleRateThrottle)
|
||||
```
|
||||
|
||||
Base class for API throttling targeted at specific query filters.
|
||||
|
||||
Scope name will be 'filter_{self.filter_name}'
|
||||
|
||||
|
||||
### Methods
|
||||
|
||||
#### \__init__
|
||||
`def __init__(self)`
|
||||
|
||||
Initialize self. See help(type(self)) for accurate signature.
|
||||
|
||||
---
|
||||
#### allow_request
|
||||
`def allow_request(self, request, view)`
|
||||
|
||||
Implement the check to see if the request should be throttled.
|
||||
|
||||
On success calls `throttle_success`.
|
||||
On failure calls `throttle_failure`.
|
||||
|
||||
---
|
||||
#### get_cache_key
|
||||
`def get_cache_key(self, request, view)`
|
||||
|
||||
Should return a unique cache-key which can be used for throttling.
|
||||
Must be overridden.
|
||||
|
||||
May return `None` if the request should not be throttled.
|
||||
|
||||
---
|
||||
|
||||
## IXFImportThrottle
|
||||
|
||||
```
|
||||
IXFImportThrottle(rest_framework.throttling.UserRateThrottle)
|
||||
```
|
||||
|
||||
Limits the rate of API calls that may be made by a given user.
|
||||
|
||||
The user id will be used as a unique cache key if the user is
|
||||
authenticated. For anonymous requests, the IP address of the request will
|
||||
be used.
|
||||
|
||||
|
||||
### Methods
|
||||
|
||||
#### get_cache_key
|
||||
`def get_cache_key(self, request, view)`
|
||||
|
||||
Should return a unique cache-key which can be used for throttling.
|
||||
Must be overridden.
|
||||
|
||||
May return `None` if the request should not be throttled.
|
||||
|
||||
---
|
||||
Reference in New Issue
Block a user