You might see that the Dropbox Community team have been busy working on some major updates to the Community itself! So, here is some info on what’s changed, what’s staying the same and what you can expect from the Dropbox Community overall.
Forum Discussion
ags65
5 years agoExplorer | Level 3
upload API only works for very small files
Hello,
I try this command from my raspberry pi 2 with raspbian buster:
curl -v -X POST https://content.dropboxapi.com/2/files/upload --header "Authorization: Bearer xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
- 5 years ago
ags65 We looked into this, and it seems like you may be running in to this issue:
https://www.raspberrypi.org/forums/viewtopic.php?t=223026
As noted there, you can try:
To stop sending DFs, you can change net.ipv4.ip_no_pmtu_disc value to 1 in sysctl.
I would also try reducing the MTU on the interface in order to advertise a smaller MSS to the TCP peer.
ags65
Explorer | Level 3
Hi,
I sent the very same command from Ubuntu to upload a file of similar size and it works perfectly.
The problem have to be in the raspberry pi system or cURL command version.
I will report any progress I make on this subject.
Thank you very much.
ags65
5 years agoExplorer | Level 3
Hi,
Following with the subject, the problem arises when the file size is greater than the mtu (1500 bytes) and cURL send the more than one data packet.
I'm not un expert but what I see in Wireshark is that dropbox answer back the first packet with the ACK but inform parameters SLE and SRE with packets that I dont know what they are.
After that the raspberry try several times the retransmission of the first packet and finally dropbox send the reset that ends the connection
I dont know if someone used to deal with network problems can explain what's happening...
- Здравко5 years agoLegendary | Level 20
That what I can see is you had send 4 bytes less than Dropbox expects and the confirmations given are for packets that the server doesn't signal for... Bug in the software!
- ags655 years agoExplorer | Level 3
I've compiled in the raspberry pi the same version of cURL that works in my ubuntu (7.65.3) and the problem remains:
* TLSv1.2 (OUT), TLS handshake, Client hello (1):
* TLSv1.2 (IN), TLS handshake, Server hello (2):
* TLSv1.2 (IN), TLS handshake, Certificate (11):
* TLSv1.2 (IN), TLS handshake, Server key exchange (12):
* TLSv1.2 (IN), TLS handshake, Server finished (14):
* TLSv1.2 (OUT), TLS handshake, Client key exchange (16):
* TLSv1.2 (OUT), TLS change cipher, Change cipher spec (1):
* TLSv1.2 (OUT), TLS handshake, Finished (20):
* TLSv1.2 (IN), TLS handshake, Finished (20):
* SSL connection using TLSv1.2 / ECDHE-RSA-CHACHA20-POLY1305
* ALPN, server accepted to use http/1.1
* Server certificate:
* subject: C=US; ST=California; L=San Francisco; O=Dropbox, Inc; CN=content.dropboxapi.com
* start date: Jan 29 00:00:00 2020 GMT
* expire date: Mar 2 12:00:00 2022 GMT
* subjectAltName: host "content.dropboxapi.com" matched cert's "content.dropboxapi.com"
* issuer: C=US; O=DigiCert Inc; OU=www.digicert.com; CN=DigiCert SHA2 High Assurance Server CA
* SSL certificate verify ok.
> POST /2/files/upload HTTP/1.1
> Host: content.dropboxapi.com
> User-Agent: curl/7.65.3
> Accept: */*
> Authorization: Bearer xxxxxxxxxxx
> Dropbox-API-Arg: {"path": "/Cromosoma.cc","mode": "add","autorename": true,"mute": false,"strict_conflict": false}
> Content-Type: application/octet-stream
> Content-Length: 2863
> Expect: 100-continue
>
* Mark bundle as not supporting multiuse
< HTTP/1.1 100 Continue
* We are completely uploaded and fine
* Empty reply from server
* Connection #0 to host content.dropboxapi.com left intact
curl: (52) Empty reply from server- Здравко5 years agoLegendary | Level 20
Hmm... You can try another diagnose way. Check if the transaction completes successfully using something like:
curl -v -X POST https://httpbin.org/post -H "Authorization: Bearer xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" -H "Dropbox-API-Arg: {\"path\": \"/Cromosoma.cc\",\"mode\": \"add\",\"autorename\": true,\"mute\": false,\"strict_conflict\": false}" -H "Content-Type: application/octet-stream" -H "Expect:" --data-binary @/home/pi/Dropbox-Uploader/Cromosoma.cc
The response would show what actually got send. Evaluate it.
Let's hope result will drive you to the right conclusion.
About Dropbox API Support & Feedback
Find help with the Dropbox API from other developers.
5,910 PostsLatest Activity: 3 days agoIf you need more help you can view your support options (expected response time for an email or ticket is 24 hours), or contact us on X or Facebook.
For more info on available support options for your Dropbox plan, see this article.
If you found the answer to your question in this Community thread, please 'like' the post to say thanks and to let us know it was useful!