0
Я могу асинхронно вызывать функции лямбда-АМС в моем коде следующим образом:Вызов функции AWS Lambda через APIGateway синхронно в Swift
var r = IPInputToResourceGetSpots()
r.latitude = 37.8050638 //destination.latitude
r.longitude = -122.2972835 //destination.longitude
r.radius = 1000
let client = IPIOSAppAPIClient.defaultClient()
var results:IPOutputToResourceGetSpots = IPOutputToResourceGetSpots()
client.resourcegetspotsPost(r).continueWithExecutor(AWSExecutor.mainThreadExecutor(), withBlock: { (task: AWSTask!) -> AnyObject! in
//Deal with return of AWS function
return task
})
Но то, что я хочу, чтобы вызвать код синхронно и есть пауза кода когда функция AWS вызывается до тех пор, пока вызов не будет завершен. Я попытался изменить эту строку:
client.resourcegetspotsPost(r).continueWithExecutor(AWSExecutor.mainThreadExecutor(), withBlock: { (task: AWSTask!) -> AnyObject! in
с:
client.resourcegetspotsPost(r).continueWithBlock({ (task: AWSTask!) -> AWSTask! in
Но оба, кажется, быть асинхронными ...