前提
- Python+FlaskでWebアプリケーションを作成している
- このWebアプリケーションは同じくPython+Flaskで作成したAPIにREST API接続で値を送る
- APIには計算ロジックをもっており、Webアプリケーションから受け取った値を用いて計算して、値を返す
- 計算ロジック中に異常値が発生しないよう、現在はassertでガードしている
課題
APIに仕上げるときに、assertでエラーとさせず、JSONでエラー内容をWebアプリケーションを返したいのですが、こういう場合、assertをどのように変えたるのがいいでしょうか?また、assertは複数あるので、returnを多用したくないと思っています。
コード例
Python
1# API側のロジック(実際は別ライブラリ内で実装) 2class MyData: 3 def __init__(self, value): 4 self.value = value 5 6 def calculate(self): 7 result = self.value*2 8 # 以下のassertで引っかかる場合、エラー内容をapiからreturnできるようにしたい 9 assert result < 100 10 return self.value * 2 11 12# Webアプリケーションとのやりとり部分 13def api(): 14 value = request.form['value'] 15 mydata = MyData(value) 16 result = mydata.calculate() 17 return jsonify({'result': result})
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2022/12/27 02:41
2022/12/27 02:59
2022/12/27 06:13
2022/12/27 06:17