開発

Cloud Functionsで「The view function did not return a valid response」になる原因と対策

Share this for your friends.

Cloud FunctionsでOSError Read-only file systemになる原因と対策

GCPのクラウド環境上で処理を実行できるCloud Functions

便利なサービスだが、気をつけないと以下のようなエラーが発生する。

The view function did not return a valid response

直訳すると「ビューが正しいレスポンスを返しませんでした」となる。

ではこのエラーの原因は何なのか。

そこで今回はCloud Functionsで「The view function did not return a valid response」になる原因と対策について紹介する。

この記事を書いている人


システムエンジニア、AIエンジニアと、IT業界で10年以上働いている中堅。PythonとSQLが得意。

記事を読むメリット

Cloud Functionsで「The view function did not return a valid response」になる原因と対策がわかる


Cloud Functionsで「The view function did not return a valid response」になる原因

Google Cloud FunctionsThe 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 responseCloud 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はクラウド上に処理を定義しておける便利なサービスである。

しかしクラウドサービスなので当然利用料が発生する。

もしかしたら利益につながらない処理にはランニングコストをかけたくないかもしれない。

そんな場合には安価な小型マシンを用意するとランニングコストが抑えられるので検討すると良いかも知れない。


Share this for your friends.

ITipsと同じようなブログを作る方法

ブログに興味がありますか?

もしブログに興味がある場合は↓このページ↓を参考にすれば、ITipsと同じ構成でブログを作ることができます

サーバー、ドメイン、ASPと【ブログに必要なものは全て】このページに書きました。
同じ構成でブログ作るのはいいけど、記事はマネしないでネ (TДT;)

ランキング参加中

にほんブログ村 IT技術ブログへ

他にもブログやSNSで紹介してくれると励みになります。

はてブのコメントで酷評されると泣きます(´;ω;`)

-開発
-,

© 2024 ITips