Use the Dapr API

    In this guide, you’ll simulate an application by running the sidecar and calling the API directly. After running Dapr using the Dapr CLI, you’ll:

    • Save a state object.
    • Read/get the state object.
    • Delete the state object.

    Learn more about the state building block and how it works in our concept docs.

    • .

    Step 1: Run the Dapr sidecar

    The command launches an application, together with a sidecar.

    Launch a Dapr sidecar that will listen on port 3500 for a blank application named :

    Since no custom component folder was defined with the above command, Dapr uses the default component definitions created during the dapr init flow.

    1. [
    2. {
    3. "key": "name",
    4. "value": "Bruce Wayne"
    5. }
    6. ]

    Notice, that objects contained in the state each have a key assigned with the value . You will use the key in the next step.

    Save a new state object using the following command:

      1. Invoke-RestMethod -Method Post -ContentType 'application/json' -Body '[{ "key": "name", "value": "Bruce Wayne"}]' -Uri 'http://localhost:3500/v1.0/state/statestore'

      Step 3: Get state

      Retrieve the object you just stored in the state by using the state management API with the key name. In the same terminal window, run the following command:

      1. Invoke-RestMethod -Uri 'http://localhost:3500/v1.0/state/statestore/name'

      Look in the Redis container and verify Dapr is using it as a state store. Use the Redis CLI with the following command:

      1. docker exec -it dapr_redis redis-cli

      List the Redis keys to see how Dapr created a key value pair with the app-id you provided to dapr run as the key’s prefix:

      1. keys *

      View the state values by running:

      Output:
      1) "data"
      2) "\"Bruce Wayne\""
      3) "version"
      4) "1"

      Exit the Redis CLI with:

      1. exit

      Step 5: Delete state

      In the same terminal window, delete thename state object from the state store.