アプリケーションの REST API アクセスを設定するために、接続フレームワークを使用して遊んでいます。
私のアプリケーションは python2 で構築されています。python2 用の接続フレームワークをインストールし、エディター (editor.swagger.io) を介して yaml ファイルをいじってみました。Python Flask サーバー コードをダウンロードし、Python2 と互換性があるように変換して、1 つのコントローラーでテストしました。
サーバーが実行されている場所と同じディレクトリにコントローラーが配置されている場合。すべて問題ありませんでした。すべてのルートが追加され、期待どおりに機能していました。次に、いくつかのビジネス ロジックに基づいてコントローラーを分割し、コントローラーごとにツリー構造が必要でした。
何かのようなもの
myapp/api/magic1/magic1_controller.py
myapp/api/magic2/magic2_controller.py
等々。これは python2 では機能しません。python3でも動くようです。理由はありますか?
ログから次のエラーが表示されます
DEBUG:connexion.api:Security Definitions: {}
DEBUG:connexion.api:Validate Responses: False
DEBUG:connexion.api:Creating API blueprint: /api
DEBUG:connexion.api:Adding swagger.json: /api/swagger.json
DEBUG:connexion.api:Adding swagger-ui: /api/ui/
DEBUG:connexion.api:Adding /api/magic1/{name}...
ERROR:connexion.api:Failed to add operation for GET /api/magic1/{name}
yaml 構成ファイルで、OperationId を api.magic1.func1() などとして追加します。