View Decorators
def jwt_required
A decorator to protect a Sanic endpoint.
If you decorate an endpoint with this, it will ensure that the requester has a valid access token before allowing the endpoint to be called.
If blacklist has enabled, the decorator automatically checks token in request has been revoked.
Endpoint to be decorated must specify token keyword argument to take over token object.
@app.route("/protected", methods=["GET"])
@jwt_required
async def protected(request, token):
...
By enable fresh_required option, You can check the freshness of the access token.
@app.route("/protected", methods=["GET"])
@jwt_required(fresh_required=True)
async def protected(request, token):
...
By specify allow or deny option, You can control which roles has permission. if access control is enabled,
@app.route("/protected", methods=["GET"])
@jwt_required(allow=["ADMIN", "SUPER_ADMIN", ])
async def protected(request, token):
...
Parmeters
fresh_required- A boolean to enable option
allow- A list of roles that expected to be allowed. this can’t be used withdenytogether
deny- A list of roles that expected to be denied. this can’t be used withallowtogether
def jwt_optional
A decorator to optionally protect a Sanic endpoint.
This means decorated endpoint will still be called if no access token is present in the request. but decorator will propagate None instead of valid token object
But if there is an invalid access token in the request (expired, tampered with, etc), this will still call the appropriate error handler instead of allowing the endpoint to be called as if there is no access token in the request.
@app.route("/protected", methods=["GET"])
@jwt_optional
async def protected(request: Request, token: Optional[Token]):
...
Parmeters
This decorator dosen’t requries any parameter
def refresh_jwt_required
A decorator to protect a Sanic endpoint.
If you decorate an endpoint with this, it will ensure that the requester has a valid request token before allowing the endpoint to be called.
If blacklist has enabled, the decorator automatically checks token in request has been revoked.
Endpoint to be decorated must specify token keyword argument to take over token object.
Parmeters
fresh_required- A boolean to enable option
allow- A list of roles that expected to be allowed. this can’t be used withdenytogether
deny- A list of roles that expected to be denied. this can’t be used withallowtogether