我想使用Dropbox PHP Core SDK 将Dropbox中的文件输出到我的网站上。举个例子,我将图片上传到Dropbox。现在,如何从Dropbox的服务器向我的网站显示该图像。请注意,我不想从Dropbox下载此文件,然后显示该图像。是否可以使用Dropbox PHP Core SDK直接从Dropbox显示图像或其他文件?
编辑:你介意在#1
上更清楚如何使用自定义网址?
我可以这样做:func removeFromFavorites() {
//retrieve all favorites
let favoriteDuaIds = NSUserDefaults.standardUserDefaults().objectForKey(Dua.favoriteDuasKey) as! [Int]?
if let favoriteDuaIds = favoriteDuaIds {
//iterate through all Duas and comapre their IDs
let newFavoriteDuaIds = favoriteDuaIds.filter { favoriteDuaId in
return favoriteDuaId != duaId
}
NSUserDefaults.standardUserDefaults().setObject(newFavoriteDuaIds, forKey: Dua.favoriteDuasKey)
}
}
func isFavorite() -> Bool {
//retrieve all favorites
let favoriteDuaIds = NSUserDefaults.standardUserDefaults().objectForKey(Dua.favoriteDuasKey) as! [Int]?
if let favoriteDuaIds = favoriteDuaIds {
//iterate through all Duas and comapre their IDs
for favoriteDuaId in favoriteDuaIds {
print (favoriteDuaId)
if favoriteDuaId == duaId {
return true
}
}
}
return false
}
func toggleFavorite() {
if isFavorite() {
removeFromFavorites()
} else {
addToFavorites()
}
}
class func favorites() -> [Dua] {
let favoriteDuaIds = NSUserDefaults.standardUserDefaults().objectForKey(favoriteDuasKey) as! [Int]?
if let favoriteDuaIds = favoriteDuaIds {
return DuasDataSource.duas.filter { dua in
return favoriteDuaIds.contains(dua.duaId)
}
} else {
return []
}
}
}
这是你如何使用自定义网址的?谢谢!
答案 0 :(得分:0)
使用PHP Core SDK,访问文件内容的主要方式是使用getFile
方法,或者使用getThumbnail
方法不需要全分辨率的图像。但是,它们直接返回数据,例如,保存在您的服务器上并返回给用户,因此不符合您的描述。
听起来您更喜欢API返回指向图片的链接,您可以将其用作网页HTML中图片的来源。 Dropbox API并没有提供特别适合的方法,但有一些非理想的选择:
1)您可以使用createTemporaryDirectLink
获取图片的直接网址。请注意,这些链接在四小时后过期。
使用它看起来像:
list($url, $expires) = $client->createTemporaryDirectLink("/default.png");
2)您可以使用createShareableLink
获取图片的预览网址。这些链接不会过期。请注意,这些不会直接链接到图像数据,因此您需要按照this help article中的说明修改它们。
使用它看起来像:
$url = $client->createShareableLink("/default.png");
此外,并非所有这些都受带宽限制,每this help article。