我们通过使用 Dapr CLI 来运行 Dapr sidecar 并尝试使用状态API来存储和检索状态,从而尝试 Dapr 提供的一些功能。
运行以下命令以启动 Dapr sidecar,它将在端口 3500 上监听名为 myapp 的空白应用程序:
dapr run --app-id myapp --dapr-http-port 3500
使用此命令,没有定义自定义组件文件夹。因此Dapr 使用在 init 流中创建的默认组件定义这些定义可以在.dapr\components
中找到。这些告诉 Dapr 使用本地的 Redis Docker 容器作为状态存储和消息代理
运行下面显示的命令来存储新的数据到redis
//cmd
curl -X POST -H "Content-Type: application/json" -d '[{ "key": "name", "value": "Bruce Wayne"}]' http://localhost:3500/v1.0/state/statestore
或
//PowerShell
Invoke-RestMethod -Method Post -ContentType 'application/json' -Body '[{ "key": "name", "value": "Bruce Wayne"}]' -Uri 'http://localhost:3500/v1.0/state/statestore'
//cmd
curl http://localhost:3500/v1.0/state/statestore/name
或
//PowerShell
Invoke-RestMethod -Uri 'http://localhost:3500/v1.0/state/statestore/name'
在 Redis 容器中看到并验证Dapr 正在使用它作为状态存储。 运行以下命令来使用Redis CLI:
docker exec -it dapr_redis redis-cli
keys *
hgetall "myapp||name"
exit