【问题标题】:Writting to a txt file inside dropbox with processing.js/javascript使用 processing.js/javascript 写入 Dropbox 内的 txt 文件
【发布时间】:2015-02-27 00:58:44
【问题描述】:

我正在使用 processing.js 创建一个应用程序并通过 dropbox 公共文件夹托管结果,其想法是使用通过该平台生成的 .txt 文件将某些数据传送到本地 3D 建模环境(犀牛/蚱蜢) ,是否可以直接从网络中运行的草图写入托管在保管箱中公用文件夹中的 .txt 文件? 我的意思是,使用: saveStrings("test.txt","this is an example"); 包含草图的 html、.txt 文件和草图文件本身都存储在 Dropbox 中的同一个公共文件夹中,您可以在此处查看该站点:https://dl.dropboxusercontent.com/u/97841548/kinetica%20App/KineticaAppHTML.html

提前致谢

【问题讨论】:

    标签: javascript text processing dropbox processing.js


    【解决方案1】:

    您不能从这样的网页直接访问您的本地文件系统,而且您不能仅仅因为 KineticaAppHTML.html 页面托管在 Dropbox 上而获得对您的 Dropbox 帐户的写入权限。

    然而,一种方法是使用Dropbox API。您可以将文件写入代理到您控制的服务器,然后让该服务器对 Dropbox 进行 API 调用,或者您可以直接从 KineticaAppHTML.html 页面上的 JavaScript 使用 Dropbox API。

    Dropbox 提供了一个可供您使用的 JavaScript SDK:

    https://www.dropbox.com/developers/datastore/sdks/js

    这里有一个教程,虽然它侧重于数据存储功能而不是文件:

    https://www.dropbox.com/developers/datastore/tutorial/js

    但验证用户的基础知识是相关的。

    通过身份验证后,您可以使用此方法将新内容写入 Dropbox 中的文件:

    https://www.dropbox.com/developers/datastore/docs/js#Dropbox.Client.writeFile

    但请注意,此策略只会让您自己(即在您自己的浏览器中)能够进行 Dropbox API 调用。如果您希望其他用户使用它,此设置将使他们连接到自己的 Dropbox 帐户。如果您只需要它们连接到您自己的帐户,您需要托管和使用您自己的实际 Web 应用程序,就像我之前提到的那样,您可以安全地对您自己的帐户进行 API 调用。 (从技术上讲,您可以通过在网页中嵌入访问令牌来避免这种情况,但由于存在安全隐患,我们非常不鼓励这样做。)

    【讨论】:

      【解决方案2】:

      简短回答:不。

      您浏览器中的网页对您的文件系统没有读/写权限。只有网络。

      长答案:是的,但不是你描述的方式。

      如果您有一个运行 RESTful API 的服务器,您可以通过 URL 调用该 API(就像网络上的任何其他 API),那么您可以使用任何“ajax”方法与之通信,为其提供数据需要生成这些文件,并使其负责将它们放入正确的保管箱文件夹中。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-03-04
        • 1970-01-01
        • 2012-07-19
        • 2012-11-12
        • 2021-06-06
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多