6

我正在使用 CouchApp 构建一个简单的 Web 应用程序,允许上传和管理图片。实际图像文件存储为文档的附件,如下所示。

{
  "_id":"09fe82d75a26f9aa5e722d6b220180d2",
  "_rev":"2-5797b822c83b9d41545139caa592f611",
  "data":"some additional fields with info about the image",
  "_attachments":
  {
    "foo.jpg":
    {
      "stub":true,
      "content_type":"image/jpeg",
      "length":23721
    }
  }
}

但是为了将图像集成到 html 中,我需要附件的 url。我如何获得这个网址?

我正在使用 evently 和 mustache 来生成网页。下面是读取数据的data.js:

function(data) {
  return {
    items : data.rows.map(function(r) {
      return {
        id : r.value._id,
        rev : r.value._rev,
        title : r.value.description,
        url : "how am i supposed to do this?"
      };
    })
  };
};
4

1 回答 1

14

附件的 URL 将是http://domain/database/09fe82d75a26f9aa5e722d6b220180d2/foo.jpg

如果您的文件名是动态的,您将不得不迭代 _attachments 对象并在途中获取密钥 - 这就是您的文件名所在的位置。

for(var filename in r.value._attachments){break;}
// ...
url : '<database>/' + r.value._id +'/'+filename;
于 2011-07-28T07:12:32.990 回答