effect-aws icon indicating copy to clipboard operation
effect-aws copied to clipboard

RFC: add signature v4

Open AMar4enko opened this issue 11 months ago • 1 comments

This is basic implementation for attaching AWS Signature v4 to HttpClientRequest
Usage example is somewhat along these lines:

import { SignatureV4 }  from '@effect-aws/signature-v4/Aws4Fetch.js'
export class ApiClient extends Effect.Service<ApiClient>()(
  `ApiClient`,
  {
    effect: Effect.gen(function* () {
      const { transformClient } = yield* SignatureV4

      return yield* HttpApiClient.make(Api, {
        baseUrl: ApiBaseUrl,
        transformClient,
      })
    }),
  },
) {}

const Sig4 = SignatureV4.Default.pipe(
  Layer.provide(Credentials.layer(awsCreds))
)

const runtime = ManagedRuntime.make(
  Layer.provide(ApiClient),
  Layer.provide(Sig4),
)

AMar4enko avatar Mar 08 '25 14:03 AMar4enko

⚠️ No Changeset found

Latest commit: 4c34768317b5ee517a4559f9a75b82b58005728e

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

changeset-bot[bot] avatar Mar 09 '25 17:03 changeset-bot[bot]