Ok so turns out the ‘Server returned 0 code’ error was caused by not specifying a file type in the Bubble dialog box for the File Upload panel. Oops. That part is resolved.
Now I have another issue.
I can upload files to my S3 bucket, but the first file I upload always results in a 403 (Forbidden) error from Amazon. Any file which is uploaded after the first (on the same page without a refresh) does not have this issue. What could this be caused by?