Help us understand the problem. What is going on with this article?

[AWS]API GatewayでAPIにリソースを挿入する

More than 1 year has passed since last update.

AWSを活用したサーバーレスアプリケーションを勉強中に困ったことを書いていきます。

こんな人向け

APIGatewayに沢山リソースとメソッド作成した!

と、思ったら頭の方に階層が足りないことが発覚(´・ω・`)

やりたいこと

Before

/
  POST
    /resource_1
      GET
    /resource_2
      POST
                     その他もろもろ...

After

/
  /{param1}    // 追加
    POST
      /level_11
        GET
      /level_12
        POST
                     その他もろもろ...

できそうな方法を考えてみる

  • コンテキストメニューで挿入的なメニューがあるんじゃないか?

    → ありません\(^o^)/

  • 作れる場所に作ってから、ドラッグ&ドロップすれば...!

    → できません\(^o^)/

ということで、
AWS Loft Tokyo のAsk An Exportというサービスを利用させていただきました。

AWSのアカウントを持っていれば、無料で利用できるコ・ワーキングスペース、Ask An ExportでAWSの質問が可能です。

本当はもっと高度な相談をするためのものなんだろうな...と引け目も感じつつ、
聞くは一時の恥、聞かぬは一生の恥と勇気を出して質問してみましょう。

Q. 上記のようなことをする方法がありますか?

A. あー、、、簡単にはできませんねぇ。

ということで、代替の方法を教えていただきました。

  1. APIをSwaggerでエクスポートします。
  2. Swaggerを編集します。
  3. 編集したSwaggerをインポートします。

ふむ、確かに。。。

ということでとりあえず出来たのですが、実はこの後に 落とし穴 があります。
各メソッドからLambdaを呼び出す設定が消えるので設定し直しです\(^o^)/

所感

API設計をちゃんとやってから作りましょう!と言ってしまえばおしまいですが、
APIにリソースを追加したり、整理したりすると、こういうこともよくあると思いますので、
挿入する階層まで全部作り直し!よりはマシな方法として覚えておきたいです。

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away