I was able to solve this. The parser in production GAE is more sensitive than the one in the development environment, and the one in production provides no useful information to the user about why it fails. This is a known issue: http://code.google.com/p/googleappengine/issues/detail?id=3273 for the bug report.
The reason the upload was failing on the server was because one of the form fields was missing a \r\n: --jtmyobpmsbvkwefmrarmjuescosjfuxm Content-Disposition: form-data; name="recording_time" 3 is correct, whereas --jtmyobpmsbvkwefmrarmjuescosjfuxm Content-Disposition: form-data; name="recording_time" 3 is not. The latter succeeds in the development environment, whereas it fails in production GAE. It took a couple hours of debugging to get to this conclusion -- it would be nice if GAE blobstore reported POST parsing errors in some way. Adam On Jul 14, 12:54 pm, adam <[email protected]> wrote: > Just a bit more data: it's clear to me that the upload URL isn't being > caught by the WSGIApplication on the server. I know this because when > I insert a catch-all url path pattern, the upload POST request hits > that handler instead of the BlobstoreUploadHandler. My WSGIApplication > is instantiated like this: > > application = webapp.WSGIApplication( > [ > ('/', MainPage), > ('/upload', UploadHandler), > ('/upload_key/([^/]+)', UploadKeyHandler)], > debug=True) > > Again, POST requests to URLs generated by > blobstore.create_upload_url('/upload') are not hitting UploadHandler. > > Thanks again, > Adam > > On Jul 14, 12:50 pm, adam <[email protected]> wrote: > > > > > > > > > Hi, I have an app that allows me upload to the blobstore locally but > > fails on the server. I get an upload url using > > blobstore.create_upload_url('/upload'), just like the example provided > > by google. > > > When running the app locally, this works. However, when I run it on > > GAE, I get a 503; seehttp://grab.by/axFo. > > > In case it helps the engineers to debug, here's the URL: > > >http://www.recordmp3.org/_ah/upload/AMmfu6bsVT68mSvZqDM85D324uLxM39c-... > > > Thank you, > > Adam -- 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.
