PawelPepe 1 Posted June 14 Hi, I would like to ask you about some help with accessing Cloud Services like Dropbox / Google Drive / Microsoft One Drive. As far as I know, every Cloud gives access by some API. I want to be able to send a file (text file or Image file) into one of this services. Is that possible? I mean: 1. User launches my application 2. Loads an Image (for example bitmap.bmp) 3. Chooses Cloud service provider 4. Uploads file into cloud and generates download link I assume that user has full access to cloud service (has an account, password and all needed authorization data). Have any of you dealt with such an issue? Where can I find some help? Maybe some example code? Where to start? -Pawel Share this post Link to post
Angus Robertson 577 Posted June 14 Each of these cloud providers has its own REST API to access storage services. You can sign up to each of them, read loads of API documentation and write code using various REST components for each one, and hope they don't change the API too often. Or search GetIt for commercial components that have done all this hard work, and hope the authors keep them up to date as APIs change, TMS Software and /n Software come to mind, never used them myself. Angus Share this post Link to post
hsauro 40 Posted June 14 4 hours ago, PawelPepe said: Hi, I would like to ask you about some help with accessing Cloud Services like Dropbox / Google Drive / Microsoft One Drive. As far as I know, every Cloud gives access by some API. I want to be able to send a file (text file or Image file) into one of this services. Is that possible? I mean: 1. User launches my application 2. Loads an Image (for example bitmap.bmp) 3. Chooses Cloud service provider 4. Uploads file into cloud and generates download link I assume that user has full access to cloud service (has an account, password and all needed authorization data). Have any of you dealt with such an issue? Where can I find some help? Maybe some example code? Where to start? -Pawel It’s hard to do this right out of the box as there is so much documentation to absorb. I’ve not tried myself but others recommend using third-party libraries such a tms cloud. I don’t know if there are any open source libraries available. Share this post Link to post
PawelPepe 1 Posted June 14 Uh, it seems it is not easy issue. Thanks. Commercial solutions costs a lot! Thanks for tips... maybe there is some simple open source solution? -Pawel Share this post Link to post
Angus Robertson 577 Posted June 14 There are no simple solutions to supporting multiple cloud providers. The free ICS component library has the HTTP REST and OAuth2 support you need, and has components to access cloud email at Google and MS, so should not be hard to add support for cloud storage, but someone will have to dedicate a few days to supporting and testing each cloud service. Angus Share this post Link to post
PawelPepe 1 Posted June 14 Is it possible to use original client installed on user machine to uplad a file and get download link? For example call OneDrive.exe with some magic parameters? Share this post Link to post
David Schwartz 430 Posted June 15 (edited) TMS Cloud Pack is the best I know of. (There are a few varieties of it.) There's a free trial that works when running inside of the IDE if it's just for your own use. Only you can place a value on your own time. Far too many programmers undervalue their time and refuse to pay for stuff that costs less than a day's earnings, some less than one hour's earnings. Also, if you're building a solution that's going to put money into your pocket (by selling to clients), then why should someone pay you for something of value if you don't see the value in the work others do? You pay people to prepare food for you; you pay for electricity delivered to your house; you pay for water, sewer, and garbage collection; you pay for clothes that people make; you pay for food that people farm; you pay for music, for movies, for popcorn; you even pay $1 or more for a bottle of water where the bottle costs more than the water inside of it; but you won't pay for software that people write? Let's say it took someone a week to build each of the interfaces in TMS VCL Cloud Pack -- it's probably more than a month, with all of the testing, support, and other stuff they've got invested, none of which you're going to provide by rolling your own -- and you don't think it's worth it to save yourself a month or more of your time by paying $200 USD or so to have a solution ready-to-go in 5 minutes? Do you only earn $200 per month? Is that how LITTLE you value your time -- that you'd "spend" 200 hours of your time in order to "save" $200? That works out to a whopping $1 per hour that you value your programming skills at. This whole notion of "software should be free" baffles the hell out of me. It's like when the CEO of Spotify said recently, "Very little effort goes into making music." Then he raised his subscription rate. Yeah, like that took him a few thousand hours to do. It will actually put a few hundred million dollars into his pocket, while not adding a penny of income to the artists who he's hardly paying for the "very little effort" they put into their artistry. I paid for a college degree in Math and Computer Science. I've spent 40+ years honing my skills, and untold thousands of dollars on tools, hardware, and services. I charge a lot for my time as a software developer, because I believe I deserve it. If someone would rather hire someone from India at $2/hr that's fine by me. You get what you pay for. But I've ALWAYS found it FAR CHEAPER to pay for software that has hundreds if not thousands of hours of work behind it than trying to do it myself from scratch. People PAY ME TO BUILD STUFF FOR THEM! Why would I want to charge them for the time it takes me to re-invent something from scratch that I can buy that's already working, debugged, and production-ready? Spending $200 for a software library that probably has over 1000 hours of work put into it is a SCREAMING DEAL in my mind. (Would it surprise you to learn that I have a TMS ALL-ACCESS PASS license?) BTW, did you write your own Delphi compiler and IDE? Edited June 15 by David Schwartz 2 Share this post Link to post
Harry Bego 0 Posted June 16 (edited) > I assume that user has full access to cloud service (has an account, password and all needed authorization data). Here's the KISS way: Add another condition: assume that the user has a synced local folder. Then you can write to the local folder and data will be synced to the cloud. Edited June 16 by Harry Bego Share this post Link to post
PawelPepe 1 Posted June 17 @David Schwartz Thank you for your comment. I have to say I don't know what you wanna tell me... Are you working for TMS Team? I almost bought it reading your post 😛 But no - I am not gonna spend so much money for it. I was looking for freee stuff not because I think paying for code is bad - but because I don't have money! Simple. I am sure TMS did great job and it works fine. @Harry Bego Yup, but that will only upload the file onto server... with no direct link to download. @Angus Robertson Good to know! Will check ICS stuff. To sum up, I think you are right. The best way is to use some commercial product (option not for me right now). Thanks. Share this post Link to post
David Schwartz 430 Posted June 17 3 hours ago, PawelPepe said: @David Schwartz Thank you for your comment. I have to say I don't know what you wanna tell me... Are you working for TMS Team? I almost bought it reading your post 😛 But no - I am not gonna spend so much money for it. I was looking for freee stuff not because I think paying for code is bad - but because I don't have money! Simple. I am sure TMS did great job and it works fine. As I said, the trial version is free, but it only runs inside of the IDE. I'll use free code samples to build proof-of-concept prototypes. Not for production code. But production libs that are free to run inside of the IDE are usually quite adequate for proof-of-concept prototypes, and that also means I can usually reuse much of the code I wrote to work with them. Share this post Link to post