Skip to content

CancerAidDev/elm-aws-core

 
 

Repository files navigation

elm-aws-core

This is a Fork from the-sett/elm-aws-core. It fixes the handling of signingName and "Content-Type" for REST_JSON requests.


This package provides the functionality needed to make HTTP requests to AWS services.

All AWS service calls must be signed correctly, in order to pass on the authorized credentials of the caller to the service. AWS has multiple signing schemes that different services use, specifically 'S3' and 'V4'.

The AWS service portfolio is large with variations in signing schemes, AWS regions and service protocols across it. The aim of this package is to provide functions to build signed HTTP requests correctly for all of the services available on AWS. The specific service interface can then be implemented with this package as a foundational element.

Modules in this package

  • AWS.Config: Build a ServiceConfig describing the protocol, signing scheme, base URL and so on for a service.
  • AWS.Service: Turn a ServiceConfig into a Service definition, needed to make HTTP calls to that service.
  • AWS.Http: Build requests, sign and send them and decode the responses. Signing and sending a request requires both a Service and some Credentials.
  • AWS.Credentials: Create AWS Credentials used to sign requests.
  • AWS.KVEncode: Utility for helping to encode Elm data into key-valued string pairs, for setting query parameters or header fields.
  • AWS.KVDecode: Utility for decoding key-values string pairs into Elm data. Simpler than KVEncode as only needed for interpreting fairly simple response headers.
  • AWS.Uri: Utility for URI encoding specific to how AWS does it.

About

Make authenticated REST requests to AWS services using Elm

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • Elm 100.0%