Dapr Python SDK 与 FastAPI 集成

如何创建基于 FastAPI 扩展的Dapr Python virtual actors

Dapr Python SDK 使用 dapr-ext-fastapi 模块与 FastAPI 集成

安装

您可以通过下面的方式下载和安装 Dapr FastAPI 扩展模块:


pip install dapr-ext-fastapi

pip install dapr-ext-fastapi-dev

示例

订阅事件

from fastapi import FastAPI
from dapr.ext.fastapi import DaprApp


app = FastAPI()
dapr_app = DaprApp(app)


@dapr_app.subscribe(pubsub='pubsub', topic='some_topic')
def event_handler(event_data):
    print(event_data)

创建 actor

from fastapi import FastAPI
from dapr.ext.fastapi import DaprActor
from demo_actor import DemoActor

app = FastAPI(title=f'{DemoActor.__name__}Service')

# Add Dapr Actor Extension
actor = DaprActor(app)

@app.on_event("startup")
async def startup_event():
    # Register DemoActor
    await actor.register_actor(DemoActor)

@app.get("/GetMyData")
def get_my_data():
    return "{'message': 'myData'}"