2017-10-08 31 views
0

我有一個相當簡單的挑戰。將表單POST發送到DynamoDB條目

我有一個HTML表單,一個字段和一個提交按鈕。它只需要一個電子郵件地址,當用戶點擊提交按鈕時,我想以某種方式將該電子郵件地址輸入DynamoDB。

等同地,會出現一個取消訂閱按鈕,需要從DynamoDB中刪除單個電子郵件地址。

這樣做的最簡單方法是什麼?我目前的設置包括一個Cloudfront發行版和一個靜態前端。理想情況下,我可以避開API網關,只使用Lambda。但是,我沒有看到將表單數據發佈到Lambda的方法。我是否必須將每個Lambda列爲Cloudfront中的原點?

+0

爲什麼你想要完全避開API網關?您無法直接向Lambda發送HTTP請求,您必須爲此使用API​​網關。您無法「將每個Lambda列爲Cloudfront中的原點」,因爲這需要您的Lambda函數公開需要使用API​​網關的HTTP API。 –

+0

我試圖避免它,因爲它對我的簡單用例來說太過分了。這是和一小時或更多的配置。我建立了許多小型網站和應用程序,當我能夠編寫代碼時,它很好,並且不會在系統管理中淹沒。這對我來說是一個痛點。 – Costa

+0

你應該研究一些類似於爲你管理這些東西的無服務器框架,而不是手動完成。 https://serverless.com/ –

回答

1

雖然API網關是簡單和直接的方式,

這裏,如果你想避免API網關你可以做什麼。

網(表單提交) - > S3(事件觸發) - > LAMBDA關於S3對象

詳細信息將被移交給LAMBDA。您可以閱讀表單對象並處理表單數據。

希望它有幫助。