Need to see if your shared folder is taking up space on your dropbox 👨💻? Find out how to check here.
Forum Discussion
ags65
6 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 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" --header "Dropbox-API-Arg: {\"path\": \"/README.md\",\"mode\": \"add\",\"autorename\": true,\"mute\": false,\"strict_conflict\": false}" --header "Content-Type: application/octet-stream" --data-binary @/home/pi/Dropbox-Uploader/README.md
and I get the error 52 Empty reply from server:
> POST /2/files/upload HTTP/1.1
> Host: content.dropboxapi.com
> User-Agent: curl/7.64.0
> Accept: */*
> Authorization: Bearer xxxxxxxxx
> Dropbox-API-Arg: {"path": "/README.md","mode": "add","autorename": true,"mute": false,"strict_conflict": false}
> Content-Type: application/octet-stream
> Content-Length: 8900
> Expect: 100-continue
>
* Expire in 1000 ms for 0 (transfer 0x1679880)
< 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
but the same command with a very small file works:
> POST /2/files/upload HTTP/1.1
> Host: content.dropboxapi.com
> User-Agent: curl/7.64.0
> Accept: */*
> Authorization: Bearer xxxxxxxxxxxx
> Dropbox-API-Arg: {"path": "/borrar.txt","mode": "add","autorename": true,"mute": false,"strict_conflict": false}
> Content-Type: application/octet-stream
> Content-Length: 5
>
* upload completely sent off: 5 out of 5 bytes
< HTTP/1.1 200 OK
< Server: nginx
< Date: Sun, 01 Mar 2020 18:54:34 GMT
< Content-Type: application/json
< Transfer-Encoding: chunked
< Connection: keep-alive
< Vary: Accept-Encoding
< cache-control: no-cache
< pragma: no-cache
< X-Server-Response-Time: 823
< X-Dropbox-Request-Id: 6a837c20651b6d6f2f6498f45e297b3f
< X-Robots-Tag: noindex, nofollow, noimageindex
<
Thanks for any clue you can give me to help me.
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.
17 Replies
Replies have been turned off for this discussion
- Здравко6 years agoLegendary | Level 20
Wow... If content of 'data' field match exactly to the posted file... hands up... I haven't more ideas. Isn't there something missing at the end? The content there is JSON-ASCII encoded! Decode it before compare if need (or opposite). For example, encode the file you passed using:
python3 -c "import json;import sys;f=open(sys.argv[1],'r');print(json.dumps(f.read()));f.close()" /home/pi/Dropbox-Uploader/Cromosoma.cc
And compare the result to 'data' field content above.
- ags656 years agoExplorer | Level 3
Yes, the content of "data" field match to the file:
"data": "/** @file Cromosoma.cc\n @brie...... << crom[i];\n }\n cout << endl;\n}\n",
print(json.dumps):
"/** @file Cromosoma.cc\n @brie...... << crom[i];\n }\n cout << endl;\n}\n"
no missing characters at the end.
- Здравко6 years agoLegendary | Level 20
I'm up to here. Probably Greg-DB can propose some additional checks.
- Greg-DB6 years ago
Dropbox Community Moderator
Unfortunately I don't know what the issue may be here. We'll try to look into it, but I can't make any promises as it seems to be client-specific, based on the observation that it doesn't occur on your other computer.
- ags656 years agoExplorer | Level 3
Thank you Greg, I understand.
I will communicate if I make new advances.
- Greg-DB6 years ago
Dropbox Community Moderator
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. - ags656 years agoExplorer | Level 3
Amazing, now it works !!!
The parameter ip_no_pmtu_disc does not seem to influence but I have lowered the value of the MTU from 1500 to 1200 and now the uploads work without problems
Thank you very much to both of you.
About Dropbox API Support & Feedback
Find help with the Dropbox API from other developers.
The Dropbox Community team is active from Monday to Friday. We try to respond to you as soon as we can, usually within 2 hours.
If 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, Facebook or Instagram.
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!