🔥

12/12~12/16でやった技術的なこと

2022/12/18に公開

FastAPIのStreamingResponseやった

FastAPIの公式ドキュメント

fastapiではjson形式のレスポンスになっているが(デフォルト)ファイルオブジェクトの返却もできる。
その時はこんな感じで書く

  def iterfile():
                with open(result.name, mode="rb") as f:
                    yield from f
 return StreamingResponse(
                iterfile()

自分用メモ
イテレータは反復して要素を取り出すことができる型
ジェネレータはイテレータの一種。要素を取り出すごとに処理を実行して要素を生成することができる。
このジェネレータをyeildを使って作ることができる。
yield from式は指定したサブジェネレータが持つ全ての値が返送されるまでは、構文上は処理が完了しないという点だ

Discussion