FastAPI Microservice Helper
Project description
FastAPI Request helper
How to use
- Set a variable
# user_service.py
from fastapi import FastAPI
from fastapi_global_variable import GlobalVariable
app = FastAPI(title="Application")
GlobalVariable.set('app', app)
- Use variable
from fastapi_global_variable import GlobalVariable
print(GlobalVariable.get_or_fail('app'))
print(GlobalVariable.get('app'))
- Decorators
FastAPI Request Helper provides lots of helpful decorators:
- Swagger docs decorators: @controller, @tag, @get, @post, @put, @delete, @patch
- Rate limit request: @rate_limit
- FastAPI response model: @response
- FastAPI guards: @guard, @gurads
- FastAPI response status: @status
- FastAPI API info details: @description, @summary, @name
- FastAPI API response status: @status_no_content, @status_ok, @status_created
- Hide API: @hidden_when(condition: boolean)
Fast API Helper also provides Pagination Query params helper: PaginationParams
# Sample
from fastapi_request_helper import (
controller,
post,
rate_limit,
response,
status_created,
status_no_content,
status_ok,
tag,
)
@controller('authentications')
@tag('Authentication')
class AuthenticationController:
def __init__(self, auth_service: AuthenticationService = Depends()):
self.auth_service = auth_service
@post('create-email-otp')
@status_no_content()
async def create_email_otp(self):
pass
How to test in testpypi
- Increase the version in
pyproject.toml
- Run command
$ ./build_and_test.sh
How to publish new version
- Increase the version in
pyproject.toml
- Run command
$ ./build_and_publish.sh
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for fastapi_microservice_helper-0.0.28.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | d0dcdc8c8cf065b93ecff3bacf3899aeb373ee6d36083cb3545c851e1f530cdf |
|
MD5 | 4c6c9d113a2181cb002e4f2f204ce2a3 |
|
BLAKE2b-256 | f8c4ddc33d832032c3ec6a5379f1244aa320bab466dd83c333f997c6741dfe12 |
Close
Hashes for fastapi_microservice_helper-0.0.28-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d8e71ee5cb67c1b865b2ddf0fb7aa2a0acd152ba148ea695cba0416a03d83c71 |
|
MD5 | b1cbf8f3d968ec438282aabf94605f9b |
|
BLAKE2b-256 | 32265a269485c91edfd9cca15a2b433d94ae0c15ae99467abe3ee5601a04f3a6 |