![](/img/trans.png)
[英]API Gateway HTTP Proxy integration with aws-sam (NOT Lambda Proxy)
[英]AWS API Gateway: How to remove/replace query string parameter in HTTP Proxy Passthrough integration?
當我使用以下設置查詢我的Invoke URL
為https://xxx.execute-api.yyy.amazonaws.com/test/q?apiKey=AAA
時,我的后端收到一個調用https://api.mysite.com/q?apiKey=AAA&apiKey=111
:一個apiKey=AAA
來自客戶端,第二個 - apiKey=111
來自Integration Request
配置。
問題:我應該做什么/如何配置apiKey=AAA
從客戶端調用中刪除或在集成步驟中用111
值替換的集成,以便后端只有一個apiKey
?
注意:
我的設置:
proxy
的新 Configure as a Proxy 資源,其資源路徑為/{proxy+}
並針對ANY
方法進行以下設置作為代理集成:
HTTP Proxy
https://api.mysite.com/{proxy}
Passthrough
URL Query String Parameters
部分,為我的/{proxy+} - ANY
配置了一個Integration Request
:
myApiKey
'111'
Deploy API
到test
階段並獲取Invoke URL
,比方說: https://xxx.execute-api.yyy.amazonaws.com/test
。即使使用代理集成,我們仍然可以覆蓋請求和響應。 這是博客。 讓我試着總結一下。
Use Proxy Integration
apiKey
queryParameter。#set($newApiKey = "abcd") $input.json("$") #set($context.requestOverride.querystring.apiKey = $newApiKey)
2\d{2}
with pass through behavior。 假設我們有路徑/someapi/sompath
的proxy
設置。 上面的模板會將/someapi/sompath?apiKey=100
替換為{proxy}?apiKey=abcd
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.