web-dev-qa-db-ja.com

--rest-api-idおよび--resource-idとは何ですか?どこにありますか?

このコマンドを実行したい: https://docs.aws.Amazon.com/cli/latest/reference/apigateway/test-invoke-method.html

これらの2つのフィールドが必要ですが、ドキュメントを見つけることができません。

aws apigateway test-invoke-method --rest-api-id 1234123412 --resource-id avl5sg8fw8 --http-method GET --path-with-query-string '/'

私のAPIゲートウェイエンドポイントは次のようになります。

https://abc123.execute-api.us-east-1.amazonaws.com/MyStage/

そこには一意の識別子しか表示されませんが、このコマンドには2つのIDが必要なようです。 API Gatewayコンソールのどこにありますか?

8
red888

Rest-api-idは、エンドポイントURLの「execute-api」の前の識別子です。

あなたの例のURLでは:

https://abc123.execute-api.us-east-1.amazonaws.com/MyStage/

rest-api-idabc123です

リソースIDは、CLIでget-resources呼び出しとrest-api-idを使用して取得できます。

> aws apigateway get-resources --rest-api-id abc123
{
"items": [
    {
        "id": "xxxx1",
        "parentId": "xxxx0",
        "pathPart": "foo",
        "path": "/foo",
        "resourceMethods": {
            "GET": {}
        }
    },
    {
        "id": "xxxx0",
        "path": "/"
    }
]}

items属性の各レコードはリソースであり、そのid属性は、関連付けられているメソッドと組み合わせてtest-invoke-methodで使用できるリソースIDですリソース。

エンドポイント/リソースの1つを選択すると、両方の値がコンソールの上部に表示されます: enter image description here

14
Tres' Bailey