バックエンドのコードを書く
概要
バックエンド関数のコードは、8th Wallアカウントに関連付けられたサーバーレス環境で実行されます。すべてのバックエンド関数は handler
と呼ばれるトップレベルの async メソッド をエクスポートしなければならない。
エントリーファイルのコード例:
const handler = async (event: any) => {
// Custom backend code goes here
return {
body: JSON.stringify({
myResponse,
}),
}.
}
export {
handler,
}.
クライアント・メソッド
バックエンド関数を作成すると、自動的にクライアントメソッドが作成されます。 このクライアント
メソッドは fetch
のラッパーです。つまり、
通常の fetch
呼び出しと同じ引数をこの関数に渡すことができます。 詳しくはFetch API
を参照のこと。
このクライアントメソッドは、モジュールクライアントコードからバックエンド関数にリクエストを送る方法です。
フェッチ・ラッパー](/images/studio/bfn-fetch-wrapper.png)
ファンクション・イベント・パラメーター
ハンドラメソッドは、クライアントメソッドが呼ばれるたびに event
オブジェクトとともに呼び出される。 event`
は以下のプロパティを持つ:
Property | Type | 商品説明 |
---|---|---|
パス | ストリング | クライアン トメソッドに渡される URL パス ('/getUser/foo' 、 '/checkAnswer' など)。 |
ボディ | ストリング | JSON.parse(event.body)`を呼び出して、ボディをオブジェクトに変換する。 |
httpMethod | ストリング | バックエンド関数の呼び出しに使われる HTTP メソッド。 GET'、 PUT'、 POST'、 PATCH'、 DELETE'` のいずれか。 |
queryStringParameters | 記録<string, string> | リクエストのクエリ文字列パラメータを表すキーと値のペア。 |
ヘッダー | 記録<string, string> | リクエストヘッダを含むキーと値のペア。 |
リターンオブジェクト
すべてのプロパティはオプションです。
Property | Type | 商品説明 |
---|---|---|
ステータスコード | 番号 | レスポンスのステータスコード。 デフォルトは200 である。 |
ヘッダー | 記録<string, string> | レスポンスに関連するヘッダー。 |
ボディ | ストリング | レスポンスに関連付けられた JSON.stringify() のボディオブジェクト。 |