📞

Firebase Cloud FunctionsのCallableを型安全に扱いたい

2024/07/19に公開

そういえばFirestoreなどはかなり前から型安全に扱うことができてましたが、 Callable がどうだったかと思ったので調べてみました。

結論から言うと

struct CallableRequest: Encodable {
  let requestParameter: String
}

struct CallableResponse: Decodable {
  let result: String
}

let callable = Functions.functions()
    .httpCallable("callableName", requestAs: CallableRequest.self, responseAs: CallableResponse.self)
let response = try await callable.call(CallableRequest(requestParameter: "hoge"))

こんな感じの指定をしてあげれば型安全に扱うことができました。
あまり情報が無さそうだったので備忘録的に残しておきます。

Discussion