हे लोग यह वही है जो मुझे मेरा मुद्दा लगता है: मैं एक फ़ंक्शन के माध्यम से ऑलमोफायर को प्रामाणिक उपयोगकर्ताओं को बुला रहा था: मैंने फ़ंक्शन "लॉगिन उपयोगकर्ता" का उपयोग उन मापदंडों के साथ किया था जिन्हें "निकाय" से बुलाया जाएगा (ईमेल: स्ट्रिंग, पासवर्ड: स्ट्रिंग) कि पारित किया जाएगा
मेरा इर्र्ट बिल्कुल था:
वैकल्पिक (alamofire.aferror.responseserializationfailed (alamofire.aferror.responseserialializationfailurereason.jsonserializationfailed) (त्रुटि डोमेन = nscocerrerrordomain कोड = 3840 "वर्ण के आसपास अमान्य मान 0." userinfo = {nsdebugdescription अमान्य ""
चरित्र 0 यहाँ कुंजी है: जिसका अर्थ है "ईमेल" के लिए कॉल पैरामीटर से मेल नहीं खा रहा था: नीचे दिए गए कोड को देखें
func loginUser (ईमेल: स्ट्रिंग, पासवर्ड: स्ट्रिंग, पूर्ण: @ डाउनलोड डाउनलोड पूर्ण) {चलो लोअरकेसडेलमेल = email.lowercased ()
let header = [
"Content-Type" : "application/json; charset=utf-8"
]
let body: [String: Any] = [
"email": lowerCasedEmail,
"password": password
]
Alamofire.request(LOGIN_USER, method: .post, parameters: body, encoding: JSONEncoding.default, headers: header).responseJSON { (response) in
if response.result.error == nil {
if let data = response.result.value as? Dictionary<String, AnyObject> {
if let email = data["user"] as? String {
self.userEmail = email
print(self.userEmail)
}
if let token = data["token"] as? String {
self.token_Key = token
print(self.token_Key)
}
फ़ंक्शन पैरामीटर में "ईमेल" को "ईमेल" से मेल खाना चाहिए जब पार्सिंग होगी तब यह काम करेगा। मुझे अब त्रुटि नहीं मिली ... और चरित्र 0 अल्मोफ़ायर अनुरोध के लिए "बॉडी" पैरामीटर में "ईमेल" था:
उम्मीद है की यह मदद करेगा
responseJSON() { ... }
ब्लॉक के बाहर टिप्पणी करने और बदलने के लिए पसंद करती है.responseString { _, _, s, _ in println(s) }
। इससे आप किसी भी अजीब पाठ को देखने के लिए लौटे हुए जौन को देख सकते हैं जो इसे अनपेक्षित कर देगाresponseJSON