仅获取 FileStack JSON.stringify 的 url 值?
Get only url value of FileStack JSON.stringify?
我在我的网站上使用 FileStack,根据 FileStack 文档,我实际上有这个:
<iframe id="framefile" width="700" height="500" frameborder="0">
<p>Your browser does not support iframes.</p>
</iframe>
<div id="files"></div>
并且在javascript侧:
<script src="http://code.jquery.com/jquery-1.12.0.min.js"></script>
<script type="text/javascript" src="http://api.filepicker.io/v2/filepicker.js"></script>
<script type="text/javascript">
filepicker.setKey("myAPIKey");
filepicker.pickMultiple(
{
mimetype: '*/*',
language: 'es_mx',
container: 'framefile',
services: ['COMPUTER','GOOGLE_DRIVE','DROPBOX']
},
function(Blobs){
console.log(JSON.stringify(Blobs));
},
function(FPError){
console.log(FPError.toString());
});
</script>
我只需要获取 URL 个文件值并将其放入 div。我试过这个:
<script type="text/javascript">
filepicker.setKey("myAPIKey");
filepicker.pickMultiple(
{
mimetype: '*/*',
language: 'es_mx',
container: 'framefile',
services: ['COMPUTER','GOOGLE_DRIVE','DROPBOX']
},
function(Blobs){
console.log(JSON.stringify(Blobs));
var result = JSON.stringify(Blobs, ['url']);
$('#files').html(result);
},
function(FPError){
console.log(FPError.toString());
});
</script>
我得到这个:
[{"url":"https://cdn.filepicker.io/api/file/--link1--"}]
但是如何通过这种方式获得URL值呢?:
有人有解决办法吗?
你快到了,不是吗?
如何将 [0].url
附加到返回的对象?
我的意思是用 result = JSON.stringify(Blobs, ['url']);
代替 result = JSON.stringify(Blobs, ['url'])[0].url
;
更新
我的第一个答案是错误的,因为 result
在
result = JSON.stringify(Blobs, ['url'])
returns '[{"url":"https://cdn.filepicker.io/api/file/--link1--"}]'
,这是一个字符串,因为它来自 stringify
ed 变量。因此,result[0]
returns 它的第一个字符,即 "["
。最后 result[0].url
或换句话说,"[".url
未定义。 (几乎不可能)
替换这部分:
function(Blobs){
console.log(JSON.stringify(Blobs));
var result = JSON.stringify(Blobs, ['url']);
$('#files').html(result);
}
来自
function(Blobs){
$('#files').html(Blobs[0].url);
}
如果想从 json 中获取所需的信息,则不能 stringify
它。
更新
或者如果你想显示多个url,因为有多个文件,将后一种方法替换为
function(Blobs){
var displayedUrls = "";
for (i = 0; i < Blobs.length; i++) {
displayedUrls += Blobs[i].url + "<br>";
}
}
$('#files').html(displayedUrls);
我在我的网站上使用 FileStack,根据 FileStack 文档,我实际上有这个:
<iframe id="framefile" width="700" height="500" frameborder="0">
<p>Your browser does not support iframes.</p>
</iframe>
<div id="files"></div>
并且在javascript侧:
<script src="http://code.jquery.com/jquery-1.12.0.min.js"></script>
<script type="text/javascript" src="http://api.filepicker.io/v2/filepicker.js"></script>
<script type="text/javascript">
filepicker.setKey("myAPIKey");
filepicker.pickMultiple(
{
mimetype: '*/*',
language: 'es_mx',
container: 'framefile',
services: ['COMPUTER','GOOGLE_DRIVE','DROPBOX']
},
function(Blobs){
console.log(JSON.stringify(Blobs));
},
function(FPError){
console.log(FPError.toString());
});
</script>
我只需要获取 URL 个文件值并将其放入 div。我试过这个:
<script type="text/javascript">
filepicker.setKey("myAPIKey");
filepicker.pickMultiple(
{
mimetype: '*/*',
language: 'es_mx',
container: 'framefile',
services: ['COMPUTER','GOOGLE_DRIVE','DROPBOX']
},
function(Blobs){
console.log(JSON.stringify(Blobs));
var result = JSON.stringify(Blobs, ['url']);
$('#files').html(result);
},
function(FPError){
console.log(FPError.toString());
});
</script>
我得到这个:
[{"url":"https://cdn.filepicker.io/api/file/--link1--"}]
但是如何通过这种方式获得URL值呢?:
有人有解决办法吗?
你快到了,不是吗?
如何将 [0].url
附加到返回的对象?
我的意思是用 result = JSON.stringify(Blobs, ['url']);
代替 result = JSON.stringify(Blobs, ['url'])[0].url
;
更新
我的第一个答案是错误的,因为 result
在
result = JSON.stringify(Blobs, ['url'])
returns '[{"url":"https://cdn.filepicker.io/api/file/--link1--"}]'
,这是一个字符串,因为它来自 stringify
ed 变量。因此,result[0]
returns 它的第一个字符,即 "["
。最后 result[0].url
或换句话说,"[".url
未定义。 (几乎不可能)
替换这部分:
function(Blobs){
console.log(JSON.stringify(Blobs));
var result = JSON.stringify(Blobs, ['url']);
$('#files').html(result);
}
来自
function(Blobs){
$('#files').html(Blobs[0].url);
}
如果想从 json 中获取所需的信息,则不能 stringify
它。
更新
或者如果你想显示多个url,因为有多个文件,将后一种方法替换为
function(Blobs){
var displayedUrls = "";
for (i = 0; i < Blobs.length; i++) {
displayedUrls += Blobs[i].url + "<br>";
}
}
$('#files').html(displayedUrls);