Home >Web Front-end >HTML Tutorial >Golang 1.6: 使用jQuery.iframe-Transport.js做Ajax文件上传并处理multipart Form_html/css_WEB-ITnose

Golang 1.6: 使用jQuery.iframe-Transport.js做Ajax文件上传并处理multipart Form_html/css_WEB-ITnose

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOriginal
2016-06-21 08:48:491326browse

本文测试环境Golang 1.6, jQuery 1.12.3

之前写过一篇文章: jQuery.iframe-Transport.js来发送Ajax文件上传请求对返回JSON的处理,就是讲使用这个jQuery插件时对返回JSON数据的处理,该插件会内置一个

// 输出multipart.Form内的数据func logMultipartForm(form *multipart.Form) {    log.Print("Values:", form.Value)    log.Print("Files:")    for key := range form.File {        headers := form.File[key]        for _, header := range headers {            log.Printf("Key: %v, Filename: %v, Header: %v", key, header.Filename, header.Header)        }    }}// 处理POST请求的Handler// Handler的声明可能根据不同路由HTTP框架而不一样func fileUploadHandler(ctx context.Context, w http.ResponseWriter, r *http.Request) {    err := r.ParseMultipartForm(1024 * 50) //50kb buffer    if err != nil {        http.Error(w, err.Error(), http.StatusInternalServerError)        return    }    form := r.MultipartForm    logMultipartForm(form)    /* 后面省略 */}

示例输出:

Values: map[X-Requested-With:[IFrame] X-HTTP-Accept:[application/json, text/javascript, */*; q=0.01]]Files:Key: avatarUpload, Filename: IMG_1156.jpg, Header: map[Content-Disposition:[form-data; name="avatarUpload"; filename="IMG_1156.jpg"] Content-Type:[image/jpeg]]
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn