2016-10-07 51 views
0

我想使用API​​網關作爲S3的代理。存儲桶由一個由兩部分組成的複合鍵進行鍵控:[userId] - [documentId]。AWS API網關:如何將多個方法請求參數合併爲一個集成請求參數

用戶ID來API網關作爲路徑參數,documentId進來作爲一個請求參數,例如:[gateway-url]/user1?documentId=doc1

我怎樣才能將二者結合起來,使得S3查找URL格式如下:https://[bucket-url]/user1-doc1

謝謝。

回答

0
  1. 設置您的方法請求以接受路徑參數{userid}和查詢參數{docid}。
  2. 設置您的集成請求以接受method.request.querystring.docidmethod.request.path.userid作爲URL路徑參數。
  3. 最後,將您的集成端點URL設置爲https://your-url/ {userid} - {docid}。

此招搖片斷如下 -

"paths": { 
"/concat-params/{userid}": { 
    "get": { 
    "parameters": [ 
     { 
     "name": "userid", 
     "in": "path", 
     "required": true, 
     "type": "string" 
     }, 
     { 
     "name": "docid", 
     "in": "query", 
     "required": false, 
     "type": "string" 
     } 
    ], 
    "responses": {...}, 
    "x-amazon-apigateway-integration": { 
     "responses": {...}, 
     "requestParameters": { 
     "integration.request.path.userid":"method.request.path.userid", 
    "integration.request.path.docid":"method.request.querystring.docid" 
     }, 
     "uri": "https:.../{userid}-{docid}", 
     ... 
    } 
    } 
} 

希望這有助於 Ritisha。