Crates.io | lambda-apigateway-response |
lib.rs | lambda-apigateway-response |
version | 0.1.1 |
source | src |
created_at | 2022-06-02 16:03:13.126427 |
updated_at | 2022-06-02 16:36:58.341434 |
description | Response object for AWS Lambda with API Gateway |
homepage | https://github.com/glaceef |
repository | https://github.com/glaceef/lambda-apigateway-response |
max_upload_size | |
id | 598930 |
size | 41,320 |
A response object for aws-lambda-rust-runtime, when the lambda function integrated into API Gateway.
use lambda_apigateway_response::{
http::StatusCode,
types::{
Headers,
MultiValueHeaders,
},
Response,
};
use lambda_runtime::{
Error as LambdaError,
LambdaEvent,
};
use serde_json::json;
type LambdaResult<T> = Result<T, LambdaError>;
async fn handler(
_event: LambdaEvent<serde_json::Value>,
) -> LambdaResult<Response<serde_json::Value>> {
let res = Response {
status_code: StatusCode::OK,
body: json!({
"message": "Hello world!",
}),
headers: Headers::new(),
multi_value_headers: MultiValueHeaders::new(),
is_base64_encoded: true,
};
Ok(res)
}
#[tokio::main]
async fn main() -> LambdaResult<()> {
let handler_fn = lambda_runtime::service_fn(handler);
lambda_runtime::run(handler_fn).await?;
Ok(())
}