XFS for Xojo, by Tim Dietrich and Hal Gumbert
XFS is an open source Xojo Web App that Tim Dietrich has developed to make uploading and downloading images or files as easy as possible. When Tim demoed XFS for me (Hal Gumbert), I couldn't believe how simple and fast it was to add remote file storage to our Xojo Web Apps. Previously, we were storing files locally in a folder within the Web App folder. That makes scaling difficult when running Web App instances on different servers. XFS provides access to your files using simple web links!
XFS is Open Source. The download includes a Xojo Web App project file for the Server and Xojo Web App project that demonstrates how to upload files.
What are Xojo Web Apps?
Xojo Web Apps are amazing. They can run on Mac, Windows, Linux, or Raspberry Pi as standalone apps or as cgi apps on many web hosting providers. People can access the Web App use their browser on just about any device.
If you have any questions about Xojo, Tim and Hal would love to help. Be sure to check out the questions that other folks had at the bottom of the page.
Getting Started with XFS
- Download, Install, and Launch Xojo: http://www.xojo.com/download/
- Download XFS.
- Open and Run the XFS Server Project which will compile and a Browser window will open where you'll see the Server Launch Page.
- XFS has a few sample images. Click this link to show / download an image after running XFS Server: http://127.0.0.1:64000/icons/account-circle-1.png
- Open and Run the XFS Uploader Project which will compile and a Browser window will open where you'll see a Form to upload files.
- Click the Form Plus Button then choose one or many files to upload.
- Click the Upload Button.
- Look in the Project folder in the 'files' folder for the files you uploaded, which by default go in to the 'files/test/foo/bar' folder.
- Look in the Project folder in the 'logs' folder for to see the log file.
Web App Deployment and Browser Requirements: http://developer.xojo.com/system-requirements
We love the Xojo platform. Not only is the development environment very affordable, but it's also powerful, easy to use, and the Xojo Team is very accessible. Time after time, Xojo has responded to new features and bug fixes in a quick and open fashion. It's a pleasure to work with Xojo!
Xojo is free to evaluate for an unlimited amount of time so you can run and debug. Purchasing Xojo allows you to compile, deploy, and distribute your Apps. Since Xanadu is a Web App, all you need is Xojo Web: https://www.xojo.com/store/
Questions and Answers
A: In the XFS Uploader project file, look on the Upload Page —> FileUploader1 —> UploadComplete Method for:
'socket.Send("POST", "http://127.0.0.1:64000/test/foo/bar/" + filename )'. then change 'test/foo/bar' to what ever you like. when you upload a file, the folder structure will be automatically created!
A: That depends on what you need! :) Seriously, just ask and we'll consider it.
A: You sure can! We'd appreciate you sending us your changes along with an explanation and we'll consider adding your ideas into the project so others can benefit too.
- Updated FileSave to auto create the Files folder.
- Updated RequestLog to auto create the Logs folder.
- Added full support for handling 404 errors.
- Added support for uploading files via HTTP POST requests.
- Also added support for URL encoded paths and filenames.
- Improved support for file extension to MIME type mapping.
- Added support for serving up the index page, content, and logging.