Макет данных ответа с безсерверной структурой - PullRequest
1 голос
/ 17 января 2020

Документы приводят в качестве ложного примера следующее:

functions:
  hello:
    handler: handler.hello
    events:
      - http:
          path: hello
          cors: true
          method: get
          integration: mock
          request:
            template:
              application/json: '{"statusCode": 200}'
          response:
            template: $input.path('$')
            statusCodes:
              201:
                pattern: ''

Это создает ложный ответ ... за исключением того, что он пустой.

Как я могу на самом деле вернуть данные здесь? Я пытался добавить application/json: {...} к template, но это не сработало, я пытался добавить тело под statusCodes, но тоже не повезло.

Кажется, что нет любая документация по этому вопросу ... как я могу вернуть фактическое тело?

Ответы [ 2 ]

0 голосов
/ 13 февраля 2020

Это то, что я делаю, чтобы вернуть ложные данные ответа ...

functions:

  helloworld:
    handler: api/handler.mock
    events:
      - http:
          path: ''
          method: get
          integration: mock
          request:
            template:
              application/json: '{"statusCode": 200}'          
          response:
            template: '{"code": 200,"message": "Helloworld!"}'
            statusCodes:
              200:
                body: '{"code": 200,"message": "Helloworld!"}'
0 голосов
/ 17 января 2020

Вы можете сделать это, установив значение response.template. Однако, это не делается с помощью клавиши application/json, такой как request, вы просто устанавливаете template напрямую.

Возвращает строку foo

response:
  template: "foo"
    statusCodes:
      201:
      pattern: ''

Возврат JSON

response:
  template: ${file(foo.txt)}
    statusCodes:
      201:
      pattern: ''


# Where foo.txt contains regular JSON

{
  "foo":"bar"
}
...