AWS API Gateway HTTP 代理模式

2024-02-24

我正在尝试使用 AWS API Gateway 将请求代理到我在 docker 容器中运行的一些 REST 端点。我为集成类型 HTTP 设置了 API 网关方法,并选中了“使用 HTTP 代理集成”,但这不仅仅是代理我的请求,它剥离了路径参数、查询字符串参数和正文,并使我将它们映射到某些内容。

我是否遗漏了一些东西,我不希望 API 网关转换我的请求,我只是希望它将它代理回我的内部 REST 端点。

仅供参考,我正在使用 swagger 文档来生成 API 网关结构(他们的 UI 非常烦人)

我读到了有关 {proxy} 端点的内容,这听起来像是我想要的,但是如何定义有关某个端点操作的 swagger 文档,或者如何在我的端点上拥有细粒度的 api 密钥和授权者?


只能对资源和方法设置授权

。例如,我们有以下 API 结构:

/
 /test
   GET              (1)
   PUT
/test/new           (2)
   ANY
/example/{proxy+}
   GET              (3)

1) 对于方法

site.com/test终点

在 GET 方法中,如果您尝试在 PUT 方法中使用相同的密钥,则会出现错误。

2)对于资源

site.com/test/new终点

在 /test/new 中的所有方法中,但是如果您尝试在 /test/new/new 2 上获取,则会捕获错误。

3)对于资源(带代理)

site.com/example/{proxy+}终点

您可以对任何 example/* 路径进行身份验证。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

AWS API Gateway HTTP 代理模式 的相关文章

随机推荐

  • 尝试使用 object_getIvar 检索值时 EXC_BAD_ACCESS

    我正在尝试学习如何利用 Objective C 运行时函数 我有一本字典 其中包含几个name value pairs E g recipe description Delicious and healthy recipe id 70423
  • 下降顺序和级联

    我想使用 CASCADE 在一个语句中删除表中使用的序列和表本身 但我收到通知 并且表没有被删除 例如 CREATE SEQUENCE seq1 CREATE TABLE t1 f1 INT NOT NULL DEFAULT nextval
  • C中设定间隔生成随机数

    我确实了解Python 并且在设定的时间间隔内创建随机数非常简单 但在C 中似乎有点复杂 这是我通过查看有关堆栈溢出的其他问题得到的结果 int diceroll 1 diceroll 1 rand 3 1 printf d n dicer
  • Emacs 23 和 iPython

    有人在 emacs 23 上使用 iPython 吗 emacs wiki 上的文档有点混乱 我有兴趣听取任何使用 emacs 进行 Python 开发的人的意见 你使用下载的 python mode 和 ipython el 吗 你有什么
  • XmlpullparserException:需要一个带引号的字符串(java.io.Inputstreamreader 中的位置:DOCDECL @1:62)

    Code SoapObject request new SoapObject NAMESPACE SOAP METHOD GETDATATBL request addProperty TName ttnm request addProper
  • jgit 如何获取两个日期之间发生的所有提交

    或者只是两个日期之间发生的所有提交 在 SVN 中 你可以做类似的事情svn diff r date date 去做吧 你可以举这个例子JGit测试类RevWalkFilterTest java https github com eclip
  • 从方法外部取消 GetAsync 请求

    我有大量的异步请求 在某些时候 当应用程序停用 暂停 时 我需要取消所有请求 我正在寻找一种解决方案来取消异步方法之外的请求 有人能指出我正确的方向吗 这是代码块 异步方法 public async void GetDetailsAsync
  • 更改数组中的索引顺序

    现在已经被困在这个问题上有一段时间了 所以任何帮助将不胜感激 我有一个包含元素列表的数组 左 目标是使用左数组中的值对另一个数组 右 键进行排序 左边的数组 Array 0 gt ID 1 gt FirstName 2 gt LastNam
  • 如何在Google Drive Filestream中创建node.js项目

    我正在尝试在 Google Drive Stream windows10 上创建一个 vue 项目 但我不能 cd G MyDrive webdata sample app vue init simulatedgreg electron v
  • @AppStorage可以在SwiftUI中的Environment中使用吗?

    AppStorage可以在SwiftUI的Environment中使用吗 如果可以 你会怎么做 我知道您可以使用 Bindings 将 AppStorage 的值从一个视图发送到另一个视图 我想知道是否可以将其放入环境中 我没有关于何时适用
  • 所有 iOS 屏幕尺寸的启动屏幕图像尺寸

    我正在尝试为我的 iOS 应用程序创建午餐屏幕图像 但我不确定它的尺寸合适 根据苹果网站 iPhone 6 的纵向尺寸应为 750 x 1334 2x 但我的问题是 如何创建适合所有屏幕尺寸 例如 iPhone 5 5s 6 6 plus
  • 多行在 TextInputLayout 中不起作用

    无论我做什么 我都无法成功EditText内部多行TextInputLayout 必须添加InputLayout用于字符计数器 因此 当我输入某些内容时 它会水平移动 而不是在一段时间后进入新行 正如你所知道的 在正常情况下EditText
  • 保护 WCF RESTful 服务——除非经过身份验证,否则无法调用它

    我将使用 webHttp 或 basicHTTP 绑定编写一个 RESTful WCF 服务 没什么花哨的 但是 我想保护它 以便除非有人登录 通过我的 ASP Net MVC 网站进行身份验证 否则他们无法使用该服务 我肯定找错了地方 因
  • 文件的 CRC 检查

    我正在使用一个小型 FAT16 文件系统 并且想要为存储配置信息的单个 XML 文件生成 CRC 值 如果数据发生更改或损坏 我希望能够检查 CRC 以确定文件仍处于原始状态 问题是 如何将CRC值放入文件中 而不改变文件本身的CRC值 我
  • Protractor - 当子元素也是页面其他位置的主元素时,如何在元素内查找元素

    div class base view app loaded div class ng scope div class ng scope div class feedback ball feedback ball show feedback
  • 如何处理 Axios 超时与挂起的 API 服务器?

    尝试获取时遇到问题timeoutaxios 工作方法 为了测试 我故意设置了一个错误的 API 端点 它接受请求 抛出错误 例如 throw new Error testing for timeout 并且故意不做任何其他事情 一旦我调用测
  • 如何在实体框架 OnModelCreating 中运行查询

    关于如何运行查询的任何想法OnModelCreating 我正在尝试运行查询 然后基于该查询忽略实体中的列 protected override void OnModelCreating DbModelBuilder modelBuilde
  • Python 3 线程 websockets 服务器

    我正在 python 3 中构建一个 Websocket 服务器应用程序 我正在使用这个实现 https websockets readthedocs io https websockets readthedocs io 基本上我想管理多个
  • 如何通过 Django Channels 使用多个 websocket 连接?

    我已经愉快地使用 Django Channels 几个月了 但是 我在 Django 项目中添加了第二个依赖于 websocket 的应用程序 但遇到了麻烦 我得到的错误是websocket connection failed websoc
  • AWS API Gateway HTTP 代理模式

    我正在尝试使用 AWS API Gateway 将请求代理到我在 docker 容器中运行的一些 REST 端点 我为集成类型 HTTP 设置了 API 网关方法 并选中了 使用 HTTP 代理集成 但这不仅仅是代理我的请求 它剥离了路径参