【发布时间】:2016-10-29 13:46:14
【问题描述】:
我尝试在 blobstore 上添加文件,我找到了一些使用 go 的示例,但这些是带有 html 模板的示例,我现在从我的 react-native 应用程序发送图像,该应用程序调用我的 api 在 go 中添加文件到 blobstore。
那么如何在 blobstore 上添加一个文件,其中包含我在 go 中使用 r.FormFile() 获得的文件?
我找到的例子:
func sampleHandler(w http.ResponseWriter, r *http.Request) {
// [START uploading_a_blob_2]
var rootTemplate = template.Must(template.New("root").Parse(rootTemplateHTML))
const rootTemplateHTML = `
<html><body>
<form action="{{.}}" method="POST" enctype="multipart/form-data">
Upload File: <input type="file" name="file"><br>
<input type="submit" name="submit" value="Submit">
</form></body></html>
`
// [END uploading_a_blob_2]
// [START uploading_a_blob_1]
ctx := appengine.NewContext(r)
uploadURL, err := blobstore.UploadURL(ctx, "/upload", nil)
if err != nil {
serveError(ctx, w, err)
return
}
w.Header().Set("Content-Type", "text/html")
err = rootTemplate.Execute(w, uploadURL)
if err != nil {
log.Errorf(ctx, "%v", err)
}
// [END uploading_a_blob_1]
}
谢谢:)
【问题讨论】:
标签: rest google-app-engine go blobstore