इसलिए मैंने इस पर बहुत समय बिताया है, और यह मुझे ऐसा लगता है कि यह एक साधारण फिक्स होना चाहिए। मैं अपनी साइट पर उपयोगकर्ताओं को पंजीकृत करने के लिए फेसबुक के प्रमाणीकरण का उपयोग करने की कोशिश कर रहा हूं, और मैं इसे सर्वर साइड करने की कोशिश कर रहा हूं। मैं उस बिंदु पर पहुंच गया हूं जहां मुझे अपना टोकन प्राप्त होता है, और जब मैं जाता हूं:
https://graph.facebook.com/me?access_token=MY_ACCESS_TOKEN
मुझे वह जानकारी मिल रही है जिसे मैं एक स्ट्रिंग के रूप में देख रहा हूँ जो इस प्रकार है:
{"id":"123456789","name":"John Doe","first_name":"John","last_name":"Doe","link":"http:\/\/www.facebook.com\/jdoe","gender":"male","email":"jdoe\u0040gmail.com","timezone":-7,"locale":"en_US","verified":true,"updated_time":"2011-01-12T02:43:35+0000"}
ऐसा लगता है कि मुझे dict(string)इस पर उपयोग करने में सक्षम होना चाहिए, लेकिन मुझे यह त्रुटि मिल रही है:
ValueError: dictionary update sequence element #0 has length 1; 2 is required
इसलिए मैंने अचार का उपयोग करने की कोशिश की, लेकिन यह त्रुटि मिली:
KeyError: '{'
मैंने django.serializersइसे क्रमबद्ध करने के लिए उपयोग करने की कोशिश की, लेकिन इसके समान परिणाम थे। कोई विचार? मुझे ऐसा लगता है कि उत्तर को सरल होना है, और मैं सिर्फ बेवकूफ बन रहा हूं। किसी भी मदद के लिए धन्यवाद!
ast.literal_eval()। आपका (संशोधित) उत्तर सही है, हालांकि - एक JSON डीसेरलाइज़र एक बेहतर समाधान है।
"verified":trueजब तकtrueपरिभाषित नहीं किया जाता है तब तक विफल रहता है। या आप उपयोग कर सकते हैं"verified":True, या"verified":"true"।