Javascript 如何从dropbox c读取文件

Javascript 如何从dropbox c读取文件,javascript,c#,Javascript,C#,我有一个带有dropbox picker的网页。我可以选择一个文件并获取文件名和链接。我需要将此信息传递给Capi以读取文件 这里是我的API代码片段 var webClient = new WebClient(); byte[] arr; arr = webClient.DownloadData(dropboxFileData.Link); 但是,arr包含dropbox HTML身份验证页面。所以,我想我必须通过认证。我如何获得这些信息 谢谢首先,您不能使用WebClient进行此操作,因

我有一个带有dropbox picker的网页。我可以选择一个文件并获取文件名和链接。我需要将此信息传递给Capi以读取文件

这里是我的API代码片段

var webClient = new WebClient();
byte[] arr;
arr = webClient.DownloadData(dropboxFileData.Link);
但是,arr包含dropbox HTML身份验证页面。所以,我想我必须通过认证。我如何获得这些信息


谢谢

首先,您不能使用WebClient进行此操作,因为它不会在重定向之间维护Cookie

最糟糕的方法是使用WebRequest发送请求,然后检查ResponseUri以确定是否已重定向到身份验证页面。然后,您提交一个新的WebRequest凭据表单,获取响应cookie并再次将其用于下载请求。这基本上是可行的,但如果DropBox更改了auth表单,它可能很容易崩溃


正确的方法是在可用的情况下使用DropBox API。它是可靠的,因为用户熟悉记录良好的API,并且不需要他们向某些第三方应用程序提供密码。

只要阅读您与我们共享的APICan链接,如果我能验证链接是否处于正确的状态,我可能会为您提供一些非常紧凑的代码。当用户选择提示他们进行身份验证的按钮时,问题在于Javascript。现在我有了文件链接和文件名。所以,您的意思是没有办法获得类似于GoogleDrive的令牌,并使用它来获取文件数据。我试图避免添加另一个依赖项。如果您使用dropbox picker,生成的下载链接不会绑定到经过身份验证的帐户,您甚至可以在服务器端下载。是的,我使用的是dropbox picker。我得到文件名和文件链接。现在我读了文件的内容。因此,我调用api并将链接传递给它。但是,它似乎需要一些身份验证代码,因为我返回了登录html。如何读取内容?从客户端传输到服务器时,您的链接很可能已损坏。我刚刚确认,通过从picker到WebClient的直接链接,无需任何额外的身份验证即可正常工作。谢谢。我需要设置为直接,而不是预览链接