【问题标题】:How read image via fileReader and PUT it to CouchDB by jquery $.ajax method?如何通过 fileReader 读取图像并通过 jquery $.ajax 方法将其放入 CouchDB?
【发布时间】:2017-07-15 13:03:48
【问题描述】:

html:

 <input type="file" v-model="fileName" @change="fileNameChange" />

javascript:

 fileNameChange(e) {
    const file = e.target.files[0]
        console.log('this.fileName', file)
    let reader = new FileReader()

    reader.onload = (e) => {
    let path = `db/${this.doc._id}/${file.name}?rev=${this.doc._rev}`
    console.log('imgdata', e, e.target.result, reader.result)
    $.ajax(path, {
                type: 'PUT', 
                contentType: file.type,
                data: reader.result, //e.target.result,
                processData: true,
                success(resp) { 
                    console.log(resp)
                    utils.notify('file is uploaded succesfully')
                },
                error(err) { console.log(err) },
            })
   };

   reader.readAsArrayBuffer(file)
 }

此代码有效,我看到“文件已成功上传”消息,但在 CouchDB 文档中我看到 0 字节长度的附件:

 1.jpg  0 bytes, image/jpeg

我该如何解决这个问题?

【问题讨论】:

    标签: jquery ajax couchdb filereader


    【解决方案1】:

    我找到了解决方案。如果从

    更改一个字符串
     processData: true,
    

     processData: false,
    

    一切正常

    【讨论】:

      猜你喜欢
      • 2016-03-31
      • 1970-01-01
      • 1970-01-01
      • 2016-09-10
      • 1970-01-01
      • 1970-01-01
      • 2016-02-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多