hi all! a number of us have started seeing twitter API errors in prod GAE in the last week or so. write calls and some search calls are returning HTTP 401 {"errors":[{"code":32,"message":"Could not authenticate you."}]}
for all users with no code changes on our end. the particularly odd part is that the same calls with the same code, twitter app key/secret, and even the exact same user access token key/secret work fine in dev_appserver.
we're on python and mostly using tweepy. our current theory is that twitter has blacklisted or graylisted app engine's external facing IPs. can you think of any other ideas?
more details in this twitter dev forum post. thanks in advance!
thanks for the comprehensive debugging, Dave and David! it definitely sounds like new header munging on app engine's part may be the problem. Dave, your idea of sending the API calls to a different endpoint and examining the headers sounds like a great lead. i'm looking forward to the results!
POST /home/wizards?status=Test' HTTP/1.1
POST /home/wizards?status=Test%27 HTTP/1.1
--
You received this message because you are subscribed to a topic in the Google Groups "Google App Engine" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/google-appengine/6ILDt39anbs/unsubscribe.
To unsubscribe from this group and all its topics, send an email to google-appengi...@googlegroups.com.
To post to this group, send email to google-a...@googlegroups.com.
Visit this group at http://groups.google.com/group/google-appengine.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-appengine/69cc83ab-30ce-48d3-a27b-fff113f44623%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
as another data point, there may be more to it than just punctuation characters. i see the error with pretty much any tweet content and username. i reproduced it just now by attempting to tweet "foo" (just those three characters) as @schnarfed. sigh.
Another update. It seems that the issue is happening in App Engine release 1.9.20. Some of the instances in my app are on this release, and others are on the previous 1.9.19. We didn't a full scan, but based on manual inspection it seems that all the errors are happening on requests that are on the 1.9.20 release.
My app was also rolled back to 1.9.19 yesterday. Then later it was back on 1.9.20, but the error seems to have been fixed. I also got email confirmations from customers that they're not seeing this problem any more. Great team work.