Take Your Search Game to the Next Level with Dropbox Dash 🚀✨ Curious how it works? Ask us here!
Forum Discussion
senthilnathan205
3 years agoExplorer | Level 3
How to upload file from external dll vb project
Hi sir,
I use the Dropbox.Api dll in my own dll that i create. i use the dll in my other project to upload files in dropbox i pass token key. dropbox folder path, local file path. i use the function Files.UploadAsync(), i got exception like this "An error occurred while sending the request." and also have stack trace like this
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Dropbox.Api.DropboxRequestHandler.<RequestJsonString>d__20.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at Dropbox.Api.DropboxRequestHandler.<RequestJsonStringWithRetry>d__18.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Dropbox.Api.DropboxRequestHandler.<Dropbox-Api-Stone-ITransport-SendUploadRequestAsync>d__13`3.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()
at AmberSoftDBPlugin.AmberSoftDB.<UploadFilesToDropBoxAsync>d__0.MoveNext() in D:\AmberSoftDBPlugin\AmberSoftDBPlugin\AmberSoftDB.cs:line 42
can u help how to solve the issue above happen.
8 Replies
Sort By
- Greg-DB
Dropbox Staff
I'll be happy to help with any issues you're having with the Dropbox API, but I'll need some more information. Please reply with:
- the name and version number of the platform and SDK/library you are using, if any
- the steps to reproduce the issue, including relevant code snippet(s), but don't include any access or refresh token(s)
- the full text of any error or unexpected output (the output you shared here doesn't seem to show the full error message from the Dropbox API/SDK)
- senthilnathan205Explorer | Level 3
hi sir,
thanks for ur reply
the version i used for dropbox api 6.25 for one
for two below code
var dpClinet = new Dropbox.Api.DropboxClient(TokenKey);
try
{
UploadArg uploadArg = new UploadArg(folder, WriteMode.Overwrite.Instance, true);
using (var mem = new MemoryStream(File.ReadAllBytes(fileToUpload)))
{
// var mem = new MemoryStream(File.ReadAllBytes(fileToUpload));
// var updated = await dpClinet.Files.UploadAsync(uploadArg, mem);
//var updated = await dpClinet.Files.UploadAsync(folder, WriteMode.Overwrite.Instance, body: mem);
FileMetadata fileMetadata = await dpClinet.Files.UploadAsync(folder, mode: WriteMode.Overwrite.Instance, autorename: false, body: mem);}
}
catch(Exception ex)
{
DoNotify(ex.Message);
DoNotify(ex.StackTrace);
}for three below errors
An error occurred while sending the request.
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Dropbox.Api.DropboxRequestHandler.<RequestJsonString>d__20.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at Dropbox.Api.DropboxRequestHandler.<RequestJsonStringWithRetry>d__18.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Dropbox.Api.DropboxRequestHandler.<Dropbox-Api-Stone-ITransport-SendUploadRequestAsync>d__13`3.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()
at AmberSoftDBPlugin.AmberSoftDB.<UploadFilesToDropBoxAsync>d__0.MoveNext() in D:\AmberSoftDBPlugin\AmberSoftDBPlugin\AmberSoftDB.cs:line 42- ЗдравкоLegendary | Level 20
senthilnathan205 wrote:...
var dpClinet = new Dropbox.Api.DropboxClient(TokenKey);
...
Hi senthilnathan205,
At the beginning, one error not directly related to the current issue, but will bring up soon, if let unfixed in advance. In your client initialization you are using access token only. This type of token is with limited validity (at most 4 hours). After that, user will need to relink your application again and again... To avoid such continuous token expiration, you have to initialize you client object with refresh token, access token expiration time, and application key (application secret might be need too depending on selected authentication type) in addition to the access token. If need, change your authentication flow.
senthilnathan205 wrote:...
FileMetadata fileMetadata = await dpClinet.Files.UploadAsync(folder, mode: WriteMode.Overwrite.Instance, autorename: false, body: mem);...
Hm...🤔 What's the content of 'folder' passed as 'path' parameter? Take in mind that path has to point to the target file (full path) where the 'body' will be put to, not to the containing folder only! Dropbox can NOT know what's the desired file name, if not pointed explicitly. 😉
Hope this gives direction.
About Dropbox API Support & Feedback
Find help with the Dropbox API from other developers.6,001 PostsLatest Activity: 2 hours ago
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 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!