Comments (1)
Hi, everyone! I guess I have found the workaround. However, I believe, it can still be improved. Below is the code for those, who might be interested. @rdrop2 developers, maybe you can take it into consideration and include the feature in upcoming versions? So here is what I have done: I have modified the original drop_download code as follows:
drop_download_shinyhttr <- function(path, local_path = NULL, overwrite = FALSE, progress = interactive(), verbose = interactive(), dtoken, session, id) {
if (!grepl("^(id|rev):", path)) path <- add_slashes(path)
if (is.null(local_path)) {
local_path = basename(path)
} else if (dir.exists(local_path)) {
local_path <- file.path(local_path, basename(path))
}
url <- "https://content.dropboxapi.com/2/files/download"
req <- httr::POST(
url = url,
httr::config(token = dtoken),
httr::add_headers("Dropbox-API-Arg" = jsonlite::toJSON(
list(path = path),
auto_unbox = TRUE
)),
if (progress) shinyhttr::progress(session=session, id=id),
httr::write_disk(local_path, overwrite)
)
httr::stop_for_status(req)
if (verbose) {
size <- file.size(local_path)
class(size) <- "object_size"
message(sprintf(
"Downloaded %s to %s: %s on disk",
path,
local_path,
format(size, units = "auto")
))
}
TRUE
}
And then run my app, but with slight modification in server function:
server <-
function(input, output, session) {
observeEvent(input$click, {
img = magick::image_read(input$upload$datapath)
fileName = sprintf("%s.jpg", gsub(":|-| ", "", Sys.time()))
img %>% saveImage(fileName)
output$output = renderImage({
drop_download_shinyhttr(path = paste0(outputDir, "/", fileName), progress = TRUE, dtoken = token, session=session, id="pb")
list(src = fileName, contentType = "image/jpeg", style = paste0("width: 100%"))
}, deleteFile=TRUE)
})
}
from rdrop2.
Related Issues (20)
- Authentication on virtual machine HOT 5
- BUG: drop_upload() does not return 'response'
- WISH: Completely silent calls
- Specify paths with shared_folder_id HOT 1
- dropbox_save with rdrop2? HOT 2
- Documentation for drop_download shows deprecated function in examples
- Auth without a .rds file : is it possible? HOT 1
- Dropbox API Version 2 Updates HOT 2
- drop_delete with dtoken
- drop_share returning "Conflict (HTTP 409)" for some files not yet shared
- drop_upload() not works with ".wav" file
- drop_read : wrapper function for readxl, readRDS, load and readcsv
- drop_auth() generating short lived tokens HOT 13
- Request for autoretry (errors with http 429)
- Token auto-refresh hangs on windows machine HOT 2
- drop_copy / drop_move moving entire file path, not just the selected file
- expired_access_token HOT 1
- Archival on Cran HOT 1
- A version of this package for your version of R might be available elsewhere HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from rdrop2.