Я потратил на это много времени, и мне кажется, что это должно быть простое решение. Я пытаюсь использовать аутентификацию Facebook для регистрации пользователей на моем сайте, и я пытаюсь сделать это на стороне сервера. Я дошел до точки, где я получаю свой токен доступа, и когда я перехожу к:
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
Итак, я попытался использовать Pickle, но получил эту ошибку:
KeyError: '{'
Я попытался использовать его django.serializers
для десериализации, но получил аналогичные результаты. Есть предположения? Я чувствую, что ответ должен быть простым, а я просто дурак. Спасибо за любую помощь!
ast.literal_eval()
. Однако ваш (исправленный) ответ правильный - десериализатор JSON - лучшее решение.
"verified":true
fails, еслиtrue
она не определена. Или вы можете использовать"verified":True
, или"verified":"true"
.