3

我正在拼命地尝试找出如何使用 PHP SDK v3 在 API Gateway 中的 POST 请求中更改集成请求的映射模板。我已经用谷歌搜索了几个小时,似乎没有进一步的文档,什么都没有。唯一的事情是官方的 AWS 文档。它非常简短。

看起来很简单 - 让我们调用一个更新方法,在其中填充一个新的应用程序/json 响应,然后我们就完成了 - 但是 - 有四种可用的候选 API 方法可以做到这一点:UpdateMethod、UpdateMethodResponse、UpdateIntegration、UpdateIntegrationResponse和所有他们有相同的文档:

$result = $client->update<whatever>([
'httpMethod' => '<string>', // REQUIRED
'patchOperations' => [
    [
        'from' => '<string>',
        'op' => 'add|remove|replace|move|copy|test',
        'path' => '<string>',
        'value' => '<string>',
    ],
    // ...
],
'resourceId' => '<string>', // REQUIRED
'restApiId' => '<string>', // REQUIRED

]);

那么,有没有人知道:

  1. 哪种方法适合这样做
  2. 在这四个“通用”字段中填写什么
  3. 有没有人通过 v3 API 做到这一点?

任何帮助表示赞赏,非常感谢您。

4

1 回答 1

3

好吧,对于将来对此感兴趣的任何人-在进行了一些研究之后,终于发现了正确的语法。它引用了 AWS API 通用更新结构,不幸的是,我无法在任何地方找到文档。

提示:在 AWS 管理中工作时分析从浏览器发送的 XHR 请求。

假设使用 aws-php-sdk-v3:

$sdk->createApiGateway()->updateIntegration([
            'restApiId'=>'<your restApiId here>',
            'resourceId' => '<specific resource id here>',
            'httpMethod' => 'POST',
            'patchOperations' => [
                [
                    'op' => 'replace',
                    'path' => '/requestTemplates/application~1json',
                    'value' => '{"response":"Hello, Kitty!"}'
                ]
            ]
        ]);
  • path参数引用JSON 指针字符串,如此所述
  • op参数很明显 - 但是当使用复制移动,还必须参数中填写 JSON 指针到源。
  • 只是您想在某处写入的原始字符串。

另一种可能性和组合是显而易见的。

祝你好运!

于 2015-11-17T12:45:17.173 回答