douya2433 2016-03-22 19:44
浏览 11

生产中的App Engine Blob存储URL响应与开发不同

I am using Go SDK (1.9.34 - 2016-03-15) on App Engine. The blobstore api was working correctly in both dev and production but now it seems to return different results, which now breaks the upload.

When I use this code in dev (using goapp serve) and production I get different results. The GET request comes with a parameter, which I extract and add it to the upload URL.

c          := appengine.NewContext(r)
upUrl, err := blobstore.UploadURL(c, "/upload", nil)
c.Infof("Upload url = %+v", upUrl)

if (err != nil) { //error handling here }

param      := r.FormValue("param")
q          := upUrl.Query()
q.Set("param", param)
upUrl.RawQuery = q.Encode()
c.Infof("Upload url after query  = %+v", upUrl)

In Dev I get (this is the intended behavior):

Upload url = http://localhost:8080/_ah/upload/RANDOMSTRING
Upload url after query = http://localhost:8080/_ah/upload/RANDOMSTRING?param=99

In Prod I get (incorrect upload url is being constructed):

Upload url = https://www.example.com/_ah/upload/?param=99/RANDOMSTRING1/RANDOMSTRING2/
Upload url after query = https://www.example.com/_ah/upload/?param=99

I know it is recommended to use Cloud Storage instead of blobstore but this is a legacy code so I don't want to change it right now. It was working fine a couple of weeks back and just noticed a difference. I upgrade from an older SDK to newer one (the results are based on the latest SDK) but still made no difference.

Any suggestions on what could be going wrong?

Thanks!

  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 求帮我调试一下freefem代码
    • ¥15 R语言Rstudio突然无法启动
    • ¥15 关于#matlab#的问题:提取2个图像的变量作为另外一个图像像元的移动量,计算新的位置创建新的图像并提取第二个图像的变量到新的图像
    • ¥15 改算法,照着压缩包里边,参考其他代码封装的格式 写到main函数里
    • ¥15 用windows做服务的同志有吗
    • ¥60 求一个简单的网页(标签-安全|关键词-上传)
    • ¥35 lstm时间序列共享单车预测,loss值优化,参数优化算法
    • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
    • ¥100 为什么这个恒流源电路不能恒流?
    • ¥15 有偿求跨组件数据流路径图