それ以外の
(A) AWS で Web アプリケーションを実行するための従来のルートに従う (AWS EC2 または Beanstalk で Ruby/Sinatra または Python/Flask を使用するなど)、または
(C) S3 で静的 HTML および JavaScript ファイルを作成し、AWS Lambda で動的 API エンドポイントを作成する (JavaScript を介してそのデータを使用/解釈する静的 Web ページに JSON データを送信する)、
私は中間点に到達したい:
- (B) クライアントへの完全な HTML 応答を生成するために HTML テンプレートを読み取って使用する HTTP エンドポイントを AWS Lambda (Python など) で作成します。
その設定により、AWS Lambda 関数がサーバー側で生成された HTML 出力を配信するサーバーレス Web アプリケーションが作成されます (皮肉なことに私は皮肉なことを忘れていません)。
AWS Lambda 関数の Python コードでは、HTML コード スニペットを含め、それを関数に変更 (データを入力) し、HTML をtext/html
出力としてクライアントに返すことができます。このアプローチの欠点は、HTML テンプレートが Python コードに「埋め込まれ」、別のファイルの外部にないことです。
Q1: コード パッケージのどこかにある HTML テンプレート ファイル (テンプレートはパッケージの一部である必要があります) を参照するにはどうすればよいですか? Python 関数でそれを読み取り、テンプレート内の変数置換によって HMTL ページを生成しますか?
Q2: AWS Serverless Application Model (AWS SAM) を使用して、自分のプロジェクトで一連の HTML テンプレートファイルを指定/インクルード/リンクするにはどうすればよいですか?