Updating: After Christina Ilvento at Google pointed me to Ikai Lan's
example (http://ikaisays.com/2011/05/26/setting-up-an-oauth-provider-
on-google-app-engine), I switched from a Python App Engine provider to
one based on Java. Now the Python client code that I posted works
(http://github.com/timburks/oauthchecker/client.py).

So it seems that the Python support for OAuth provision on App Engine
is questionable, if not broken.

Tim

On Jan 31, 1:03 pm, Tim Burks <[email protected]> wrote:
> Following up, I've shared a simple service and python client on
> github:http://github.com/timburks/oauthchecker
>
> The service contains a single handler that uses theoauthmodule to
> get the consumer id and the nickname of the authenticated user.
>
> The client is based on Joe Stump's oauth2 Python library and seems to
> successfully perform the three steps to get an access token, but from
> there I am unable to successfully make a signed request to the service
> (all this is in the client.py script).
>
> Requests currently fail with an InvalidOAuthParametersError exception.
>
> If I've made a newbie signing mistake, I apologize and will leave the
> corrected example up as testimony :)
>
> thanks again,
>
> Tim
>
> On Jan 30, 10:37 pm, Robert Kluin <[email protected]> wrote:
>
>
>
>
>
>
>
> > Hi Tim,
> >   I can not answer most of your questions, in fact I'd also like to
> > see answers to many of them. I can tell you that I have got this
> > working for non-Apps users before.  The last time I played with it
> > there were some serious quirks with Apps Domains; however, Google's
> > completely redone their auth system since then so maybe it works now.
>
> >   I'm not sure there have been any active changes to it in the past year.
> >    http://code.google.com/p/googleappengine/source/diff?spec=svn228&r=15...
>
> > Robert
>
> > On Sun, Jan 29, 2012 at 20:34, Tim Burks <[email protected]> wrote:
> > >OAuthfor Python (http://code.google.com/appengine/docs/python/oauth/
> > > overview.html) looks like a great addition to App Engine. However, I
> > > have been having some trouble using it, and since it's marked as
> > > "Experimental", I have some questions, beginning with this:
>
> > > 1) Is there someone in Google actively supportingOAuthfor Python?
> > > "Experimental" could mean that it is on the way to being fully-
> > > supported or that it's an abandoned 20% project. Is there at least a
> > > contact person who could discuss implementation issues? (I don't see
> > > one listed in the documentation)
>
> > > I am currently building an iOS app to work with a client's App Engine-
> > > based service that usesOAuth.
>
> > >OAuthfor Python looks amazingly easy to add to an App Engine app (it
> > > really seems to be present in all apps by default), and if there was a
> > > working sample iOS client app, I'm sure that there would be
> > > significant interest in the iOS development community. It would also
> > > be good to know ifOAuthfor Python is abandoned and unsupported.
>
> > > 2) Is there a sample iOS app that demonstrates how to authenticate to
> > > App Engine apps usingOAuth? If not, is there someone in the App
> > > Engine team who would advise me as I write one? This example would
> > > contain both an App Engine service and a corresponding iOS client. Two
> > > years ago Jason Cooper worked with me to create a similar
> > > demonstration for an event that I organize (http://www.meetup.com/
> > > sviphone/events/12372267/). This code is online 
> > > athttp://github.com/timburks/stickup.
> > > I am based in Palo Alto and can come to Mountain View.
>
> > > Going into details, I've managed to get through the first three steps
> > > of the "dance": 1) getting a request token, 2) displaying the
> > > authorization page, and 3) exchanging the request token for an access
> > > token. But if I strictly follow the Google documentation (http://
> > > code.google.com/apis/accounts/docs/OAuth_ref.html#AccessToken), the
> > > process doesn't work. As documented, OAuthGetAccessToken requires an
> > > oauth_signature parameter, but it only returns a token if I DON'T sign
> > > my requests.
>
> > > 3) What's going on here?
>
> > > Also, now that I've gotten a token, my signed API requests are
> > > failing. It's certainly possible that my signing is incorrect, but
> > > since I've made it this far and stumbled onto one undocumented
> > > behavior in OAuthGetAccessToken, I'm suspicious of more hidden
> > > problems.
>
> > >OAuthfor Python includes some great easy-to-call functions for
> > > getting consumer and user information within an App Engine app (http://
> > > code.google.com/appengine/docs/python/oauth/functions.html).
>
> > > Curiously, both get_oauth_consumer_key() and get_current_user() throw
> > > exceptions when I sign my requests the "right" way, using my consumer
> > > secret and token secret, but when I sign them with only the consumer
> > > secret, get_oauth_consumer_key() succeeds. This seems to echo the
> > > problem that Takashi Sasaki reported on Jan 28, 2011 in this thread:
>
> > >http://groups.google.com/group/google-appengine/browse_thread/thread/...
>
> > > 4) See question #3.
>
> > > Thanks for reading all this. Any and all help is appreciated, and I
> > > would be happy to help spread the word about how to do this correctly
> > > if we can get it sorted out.
>
> > > - Tim
>
> > > --
> > > You received this message because you are subscribed to the Google Groups 
> > > "Google App Engine" group.
> > > To post to this group, send email to [email protected].
> > > To unsubscribe from this group, send email to 
> > > [email protected].
> > > For more options, visit this group 
> > > athttp://groups.google.com/group/google-appengine?hl=en.

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.

Reply via email to