可以将json存放在亚马逊s3上吗?

时间:2013-06-13 12:00:22

标签: javascript json amazon-s3

我想将json文件存储到我的amazon s3中,然后使用ajax请求检索它。不幸的是,似乎s3不允许内容类型的应用程序/ json ....

我应该将文件保存为text / plain,然后使用php添加标题?

3 个答案:

答案 0 :(得分:6)

我发现了这个问题。我正以错误的方式解析json。

$.ajax({
    url:"https://s3.amazonaws.com/myBucket/myfile.json",
    type:"GET",
    success:function(data) {
            console.log(data.property)
    }
})

相反,这有效:

$.ajax({
    url:"https://s3.amazonaws.com/myBucket/myfile.json",
    type:"GET",
    success:function(data) {
        var obj = jQuery.parseJSON(data);
        if(typeof obj =='object'){
            console.log(obj.property)
        }
    }
})

答案 1 :(得分:2)

更改元数据'价值'在Key中:值对' Application / json'来自文件属性,在AWS S3控制台中。

答案 2 :(得分:0)

为避免解析json,请使用ajax的dataType属性,在这里我们期望将响应作为json,因此
dataType: "json"将自动为您解析json,并且可以直接访问而无需JSON.parse(),成功功能主体。

$.ajax({
        url:"https://s3.amazonaws.com/myBucket/myfile.json",
        type:"GET",
        dataType: "json",    // This line will automatically parse the response as json
        success:function(data) {
            var obj = data;
            if(typeof obj =='object'){
                console.log(obj.property)
            }
        }
    })
  

dataType -您是在告诉jQuery期望什么样的响应。   需要JSON,XML或HTML等。在我们的示例中为JSON。