AWS SDK для Swift 5: AWSLambdaInvoker ничего не делает - PullRequest
0 голосов
/ 20 сентября 2019

В настоящее время я пытаюсь интегрировать AWS Lambda с моим приложением для iOS.Согласно документации SDK, я импортировал AWSLambda через какао-бобы, а затем добавил следующий пакет кода в мой AppDelegate:

    let credentialsProvider = AWSCognitoCredentialsProvider(regionType:.USEast1, identityPoolId:"COGNITO_IDENTITY_POOL_ID")
    let awsConfiguration = AWSServiceConfiguration(region:.USEast1, credentialsProvider:credentialsProvider)
    AWSServiceManager.default().defaultServiceConfiguration = awsConfiguration

Затем, следуя «Комплексному примеру» вПриведенная выше документация почти до самого начала, я создал следующую функцию в моем TableViewController:

    func getFlightData() {
        let lambdaInvoker = AWSLambdaInvoker.default()
        let event = ["origin": "LHR", "destionation": "FRA"]
        lambdaInvoker.invokeFunction("ilondontToFrankfurt", jsonObject: event).continueWith(block: {(task:AWSTask<AnyObject>) -> Any? in
            if let error = task.error as? NSError {
                if (error.domain == AWSLambdaInvokerErrorDomain) && (AWSLambdaInvokerErrorType.functionError == AWSLambdaInvokerErrorType(rawValue: error.code)) {
                    print("Function error: \(error.userInfo[AWSLambdaInvokerFunctionErrorKey])")
                    } else {
                    print("Error: \(error)")
                    }
                return nil
            }
            if let JSONDictionary = task.result as? NSDictionary {
                print("Result: \(JSONDictionary)")
                print("resultKey: \(JSONDictionary["resultKey"])")
                return JSONDictionary
            }
            return nil
        })
    }

Функция вызывается методом viewDidLoad () TableViewController прямо при его открытии, но все же, когда я проверяю в консоли AWS LambdaНет никаких призывов.Функция не вылетает и не печатает ни одно из сообщений.Я попробовал решение, которое было одобрено для этого вопроса , но получило те же самые результаты.Есть идеи?Любое руководство будет оценено.

...