Simple proxy in Swift for converting between HTTP and API Gateway Lambda payloads

Overview

SwiftLambdaProxy

A simple proxy that can convert HTTP requests to Lambda API Gateway event payloads, forward them to a local Lambda server (for testing), and convert the response to a regular HTTP response.

This lets you invoke the local Lambda server with tools like curl or Postman.

You might also like...
Sample iOS AR app using AR Quick Look API
Sample iOS AR app using AR Quick Look API

ARQLSanta This is a minimal AR iOS app that uses the AR Quick Look API, displayi

iOS SDK for access the OpenCage Geocoding API

OpenCageSDK Requirements OpenCageSDK works on iOS 9+ and requires ARC to build. It depends on the following Apple frameworks, which should already be

This project explores the capabilities of the new iOS 16+ Passkeys API to support password-less authentications.

iOS 16+ Passkeys Swift Sample This project explores the capabilities of the new iOS 16+ Passkeys API to support password-less authentications. ⚠️ This

Open-source API Client for iOS, iPadOS, macOS. Built with SwiftUI
Open-source API Client for iOS, iPadOS, macOS. Built with SwiftUI

Yogu Open-source API Client for iOS, iPadOS, macOS. Built with SwiftUI 🚧 Yogu is currently in development, and not actually usable yet. Please DO NOT

A very simple way to implement Backbone.js style custom event listeners and triggering in Swift for iOS development.

Swift Custom Events A very simple way to implement Backbone.js style custom event listeners and triggering in Swift for iOS development. This provides

A simple to use iOS/tvOS/watchOS SDK to help get you off the ground quickly and efficiently with your Elastic Path Commerce Cloud written in Swift.

Elastic Path Commerce Cloud iOS Swift SDK A simple to use iOS/tvOS/watchOS SDK to help get you off the ground quickly and efficiently with your Elasti

Shopify’s Mobile Buy SDK makes it simple to sell physical products inside your mobile app.
Shopify’s Mobile Buy SDK makes it simple to sell physical products inside your mobile app.

Shopify’s Mobile Buy SDK makes it simple to sell physical products inside your mobile app. With a few lines of code, you can connect your app with the Shopify platform and let your users buy your products using Apple Pay or their credit card.

MainTask - Create main task by using a simple way

MainTask Create a main task by using a simple way. MainTask { print(Thread.c

The Gini Bank SDK provides components for capturing, reviewing and analyzing photos of invoices and remittance slips.
The Gini Bank SDK provides components for capturing, reviewing and analyzing photos of invoices and remittance slips.

Gini Bank SDK for iOS The Gini Bank SDK provides components for capturing, reviewing and analyzing photos of invoices and remittance slips. By integra

Comments
  • Only last bodyBytes used in HTTPHandler.channelRead

    Only last bodyBytes used in HTTPHandler.channelRead

    It looks like channelRead can be called multiple times per HTTP request, and may contain several reqPart which are of type body. In the switch statement the .body case assigns the latest bodyBytes to the body variable, losing previous parts.

    I'm not familiar with NIO and ByteBuffers so I don't know if this is safe, but a naive fix may be to allocate body in the initialiser and then in channelRead(context:data:):

        var body = ByteBuffer()
    ...
            case .body(var bodyBytes):
                body.writeBuffer(&bodyBytes)
    

    This seems to fix the issue for requests with larger payloads which may be broken up into several .body calls. However I'm not sure if we are responsible for any cleanup of the buffer etc. If that solution looks good to you I can create a PR.

    opened by mcarter6061 0
Owner
Jānis Kiršteins
Jānis Kiršteins
⚡️ A fully-featured and blazing-fast Swift API client to interact with Algolia.

The perfect starting point to integrate Algolia within your Swift project Documentation • Community Forum • Stack Overflow • Report a bug • FAQ • Supp

Algolia 192 Dec 23, 2022
RadioTimeKit - The Swift SDK for TuneIn RadioTimeKit is a Swift package to use the TuneIn API.

RadioTimeKit - The Swift SDK for TuneIn RadioTimeKit is a Swift package to use the TuneIn API. The goal for development was to have a Swift SDK to get

Frank Gregor 2 Jun 20, 2022
A framework that enhances HealthKit and the Fitbit API for iOS

VitoKit ?? Welcome to VitoKit... A framework that enhances HealthKit and the Fitbit API for iOS ✅ Features Wonderfully crafted animations Speedy setup

Vito 6 Nov 26, 2022
Swift SDK for Blockfrost.io API

Swift5 API client for Blockfrost Swift 5 SDK for Blockfrost.io API. Installation • Usage • API Endpoints Installation Swift package manager dependenci

blockfrost.io 10 Dec 24, 2022
Swift framework for authenticating with the Spotify API

SpotifyLogin SpotifyLogin is a Swift 5 Framework for authenticating with the Spotify API. Usage of this framework is bound under the Developer Terms o

Spotify 344 Jan 4, 2023
MpesaSDK - Swift SDK for the M-Pesa API (Mozambique)

M-Pesa SDK Swift package for M-Pesa API (Mozambique) Ready Methods/APIs C2B B2B

Algy Ali 16 Jul 29, 2022
Swiftcord - Swift wrapper for Discord's API. Maintained fork of Azoy's Sword

Swiftcord - A Discord Library for Swift Requirements macOS, Linux, iOS, watchOS,

Sketch 37 Nov 30, 2022
Unofficial Notion API SDK for iOS & macOS

NotionSwift Unofficial Notion SDK for iOS & macOS. This is still work in progress version, the module interface might change. API Documentation This l

Wojciech Chojnacki 59 Jan 8, 2023
150,000+ stickers API & SDK for iOS Apps.

English | 한국어 Stipop UI SDK for iOS Stipop SDK provides over 150,000 .png and .gif stickers that can be easily integrated into mobile app chats, comme

Stipop, Inc. 19 Dec 20, 2022
iOS SDK for the Box Content API

Box iOS SDK Getting Started Docs: https://developer.box.com/guides/mobile/ios/quick-start/ NOTE: The Box iOS SDK in Objective-C (prior to v3.0.0) has

Box 112 Dec 19, 2022