New to iOS development (this will become obvious shortly).
Trying to follow these instructions for making an upload style API request:
let fileData = "testing data example".data(using: String.Encoding.utf8, allowLossyConversion: false)!
let request = client.files.upload(path: "/test/path/in/Dropbox/account", input: TestData.fileData)
I've managed to upload a sample text file by replacing 'TestData.fileData' with just 'fileData' but the file ends up being called 'account' with no extension. What was 'TestData' supposed to represent?
Also, how do I upload other types of files (mp3, jpeg, etc.) string.encoding.utf8 is clearly not the answer.
Apologies, TestData.fileData should indeed just be fileData (per the first line in the example).
Also, the path parameter should be the full path in the Dropbox account where you want to upload the file, including the desired file extension.
So, for example, instead of "/test/path/in/Dropbox/account", if you wanted to upload a file named "Resume.docx" into a folder named "Documents", the path should be "/Documents/Resume.docx".
Uploading files works the same regardless of file type. The example happens to use a string converted to a Data object for simplicity, but you can supply the data using a Data, URL, or InputStream object.
For instance, here's a more advanced example for uploading large files that uploads the file content by reading Data objects from an NSFileHandle: