I try to use Picasa API with AuthSub. My code:
GD_CLIENT = gdata.photos.service.PhotosService()
def login(request):
def GetAuthSubUrl():
callback = 'http://127.0.0.1:8000/callback'
scope = 'https://picasaweb.google.com/data/'
secure = False
session = True
return GD_CLIENT.GenerateAuthSubURL(callback, scope, secure, session)
auth_sub_url = GetAuthSubUrl()
return HttpResponseRedirect(auth_sub_url)
def confirm(request):
authsub_token = request.GET['token']
token = GD_CLIENT.SetAuthSubToken(authsub_token)
GD_CLIENT.UpgradeToSessionToken()
GD_CLIENT.auth_token = token
return direct_to_template(request, 'base.djhtml')
def add_album(request):
form = AddAlbum(request.POST or None)
if form.is_valid():
data = form.cleaned_data
title = data.get('title')
summary = data.get('summary')
GD_CLIENT.InsertAlbum(title=title, summary=summary)
return HttpResponseRedirect('/get_albums/')
return render(request, 'add_form.djhtml', {'form': form})
I got an error at add_album:
(404, 'Not Found', 'Unknown user.')
Traceback: File "/home/i159/Envs/photorulez/lib/python2.6/site-packages/django/core/handlers/base.py" in get_response 111. response = callback(request, *callback_args, **callback_kwargs) File "/home/i159/workspace/photorulez/photorulez/photoapp/views.py" in add_album 49. GD_CLIENT.InsertAlbum(title=title, summary=summary) File "/home/i159/Envs/photorulez/lib/python2.6/site-packages/gdata/photos/service.py" in InsertAlbum 358. raise GooglePhotosException(e.args[0])
Exception Type: GooglePhotosException at /add_album/ Exception Value: (404, 'Not Found', 'Unknown user.')
Why is it raised? What changes are needed?
I got it!!! GD_CLIENT = gdata.photos.service.PhotosService() needed
email
keyword argument as Google account user name.gdata.photos.sevice.py
So it should be: