«контрольная сумма должна быть указана в PUT API, когда ресурс уже существует» - PullRequest
1 голос
/ 30 января 2020

Я получаю следующую ошибку при сборке с использованием AWS Lex? «контрольная сумма должна быть указана в PUT API, когда ресурс уже существует»

Может кто-нибудь сказать, что это значит и как это исправить?

Ответы [ 2 ]

0 голосов
/ 14 апреля 2020

В документации говорится, что вы должны предоставить контрольную сумму бота, который уже существует, если вы пытаетесь его обновить: https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/LexModelBuildingService.html#putBot -property

"контрольная сумма - (строка) Идентифицирует указанную c ревизию версии $ LATEST.

При создании нового бота оставьте поле контрольной суммы пустым. Если вы укажете контрольную сумму, вы получите исключение BadRequestException.

Когда Вы хотите обновить бота, установите в поле контрольной суммы контрольную сумму самой последней ревизии версии $ LATEST. Если вы не укажете поле контрольной суммы или если контрольная сумма не соответствует версии $ LATEST, вы получите Исключение PreconditionFailedException. "

Это aws -sdk для JavaScript документов, но та же концепция применима к любому SDK, а также AWS CLI.

Это требует вызова get -bot первый, который вернет контрольную сумму бота среди других данных. Сохраните эту контрольную сумму где-нибудь и передайте ее в параметрах, когда вы вызываете put-bot

. Я бы порекомендовал использовать учебники здесь: https://docs.aws.amazon.com/lex/latest/dg/gs-console.html

Этот учебник демонстрирует использование AWS CLI, но те же понятия могут быть абстрагированы для использования любого SDK по вашему желанию.

0 голосов
/ 29 марта 2020

Была такая же проблема. Я предполагаю, что после того, как вы опубликовали один бот, вы больше не сможете его модифицировать или построить. Создайте другого бота.

...