更新API网关集成请求映射模板AWS PHP SDK v3


Updating API gateway integration request mapping template AWS PHP SDK v3

我正拼命想知道如何使用PHP SDK v3在API网关中更改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做到过这一点吗

非常感谢您的帮助。

好吧,对于未来感兴趣的人来说——在做了一些研究之后,终于发现了正确的语法。它引用了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参数很明显,但当使用copymove时,还必须有from的参数,并填充指向源的JSON指针
  • 只是您想在某个地方写入的原始字符串

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

祝你好运!