При создании экземпляра AWSLambdaInvoker в Swift конфигурация службы равна нулю - PullRequest
0 голосов
/ 06 сентября 2018

Я пытаюсь реализовать лямбда-функцию с помощью приложения для iOS. Я следую всем шагам этой учебной формы AWS: https://docs.aws.amazon.com/aws-mobile/latest/developerguide/how-to-ios-lambda.html.

Но когда я добавлю следующую строку:

let lambdaInvoker = AWSLambdaInvoker.default()

выдает эту ошибку:

*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'The service configuration is `nil`. You need to configure `Info.plist` or set `defaultServiceConfiguration` before using this method.'

Я добавил в проект файл awsconfiguration.json со следующим содержимым:

{
"Version": "1.0",
"CredentialsProvider": {
    "CognitoIdentity": {
        "Default": {
            "PoolId": "us-east-1:05aab771-99b5-4a9b-8448-de92fe86ba56",
            "Region": "us-east-1"
        }
    }
},
"IdentityManager" : {
  "Default" : {

  }
}
}

Приложение работает хорошо, импортируя AWSLambda и mobileClient, и я могу проверять учетные данные с помощью Cognito (я получаю сообщение "welcome to AWS")

Есть идеи ??

1 Ответ

0 голосов
/ 06 сентября 2018

Вам потребуется обновить файл awsconfiguraiton.json, чтобы получить информацию о LambdaInvoker, чтобы он мог загрузить конфигурацию для конфигурации службы по умолчанию. Ваш обновленный файл должен выглядеть следующим образом:

{
  "Version": "1.0",
  "CredentialsProvider": {
    "CognitoIdentity": {
        "Default": {
            "PoolId": "us-east-1:05aab771-99b5-4a9b-8448-de92fe86ba56",
            "Region": "us-east-1"
        }
    }
  },
  "IdentityManager" : {
    "Default" : {

    }
  },
  "LambdaInvoker" : {
    "Default" : {
         "Region": "us-east-1"
    }
  }
}
...