में एक एडब्ल्यूएस लैम्ब्डा समारोह आह्वान करने के लिए कैसे मैं कैसे स्विफ्ट में एक लैम्ब्डा समारोह आह्वान करने के लिए पर कोई दस्तावेज या उदाहरण नहीं मिल सकता है, लेकिन मैं प्रलेखन ऑब्जेक्टिव-सी और मैं का उपयोग कर से एक्सट्रपलेशन करने की कोशिश की है 'm अभी भी हो रही त्रुटियों:स्विफ्ट
"Error in myFunction: ValidationException: Supplied AttributeValue is empty, must contain exactly one of the supported datatypes"
ऐसा लगता है कि मैं सही ढंग से कार्य करने के लिए मानकों में गुजर नहीं कर रहा हूँ जब मैं तेजी से लैम्ब्डा समारोह आह्वान क्योंकि स्क्रिप्ट DynamoDB को लिखने की कोशिश करता है, लेकिन में से एक पैरामीटर खाली है (जब मैं जावास्क्रिप्ट/नोड में इसे आमंत्रित करता हूं तो यह लैम्ब्डा स्क्रिप्ट काम करता है)।
let lambda = AWSLambda.defaultLambda()
let request = AWSLambdaInvocationRequest()
var context = [String: String]()
let jsonString = "{\"email\":\"[email protected]\",\"name\":\"example\"}"
let jsonData = jsonString.dataUsingEncoding(NSUTF8StringEncoding)
request.clientContext = jsonData?.base64EncodedStringWithOptions(NSDataBase64EncodingOptions.Encoding64CharacterLineLength)
request.functionName = "myFunction"
lambda.invoke(request).continueWithBlock({
(currentTask: AWSTask!) -> AWSTask in
if (currentTask.error != nil) {
// failed to execute.
print("Error executing: ", currentTask.error)
task.setError(currentTask.error)
} else {
print("token: ", currentTask.result)
task.setResult(currentTask.result)
}
return currentTask
})
ऑप्स, यह मेरे ऐप्स में से एक से एक खराब कॉपी पेस्ट था जो तेजी से लैम्ब्डा का उपयोग करता है। मैंने इसे अब उदाहरण से हटा दिया है। ऐप में मैं लैम्ब्डा अनुरोध को ViewController पर एक संपत्ति के रूप में संग्रहीत करता हूं, जो मुझे आवश्यक होने पर वर्तमान अनुरोध को रद्द करने की अनुमति देता है। –
एंड्रॉइड के लिए समान ढूँढना, अगर कोई मदद कर सकता है! –