GCPのクラウド環境上で処理を実行できるCloud Functions。
便利なサービスだが、気をつけないと以下のようなエラーが発生する。
The view function did not return a valid response
直訳すると「ビューが正しいレスポンスを返しませんでした」となる。
ではこのエラーの原因は何なのか。
そこで今回はCloud Functionsで「The view function did not return a valid response」になる原因と対策について紹介する。
この記事を書いている人
記事を読むメリット
Cloud Functionsで「The view function did not return a valid response」になる原因と対策がわかる
Cloud Functionsで「The view function did not return a valid response」になる原因
Google Cloud Functionsで The view function did not return a valid response
になる原因は、処理が返すはずのレスポンスを返してないから。
要はreturnを返してないからである。
returnが無くてもPythonはデプロイ成功するが、実行時にエラーになるのでよろしくない。
「The view function did not return a valid response」への対策
では The view function did not return a valid response
を回避するにはどうしたらいいのか。
まずはreturnを返すことだが、returnのデータ型も重要だ。
返すときは文字列(String)型で返すようにしよう。
return "OK"
ちなみに以下の投稿を見るに、 The view function did not return a valid response
は Cloud Functions
のエラーというよりは Flask
のエラーのようだ。
return afunction() または return 'a string' を返す必要があります。
これで問題を解決できます参考:python - Flask Value error view function did not return a response - Stack Overflow
まとめ
今回はCloud Functionsで「The view function did not return a valid response」になる原因と対策について紹介した。
Cloud Functionsで「The view function did not return a valid response」になる原因は、処理が返すはずのレスポンス(return)を返してないから。
対策としてはreturnを文字列(String)型で返すこと。
Cloud Functionはクラウド上に処理を定義しておける便利なサービスである。
しかしクラウドサービスなので当然利用料が発生する。
もしかしたら利益につながらない処理にはランニングコストをかけたくないかもしれない。
そんな場合には安価な小型マシンを用意するとランニングコストが抑えられるので検討すると良いかも知れない。
あわせて読みたい