obnizのフォーラムは新しいシステムに移行しております。

新しいフォーラムはこちらになります

Dropboxとの連携ができない



  • エラー?が出ます
    Dropboxとの連携なのですが
    https://obniz.io/doc/lessons_dropbox
    こちらを参考に実行するのですが’{[object Object]}とエラーが出ています。
    またコンソール画面には{local websocket error.
    Event{isTrusted:true}}
    どうしてでしょうか?
    プログラムの内容は以下の通り
    わかる方教えてください。
    <html>
    <head>
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <script src="https://obniz.io/js/jquery-3.2.1.min.js"></script>
    <script src="https://unpkg.com/obniz@latest/obniz.js"></script>
    <script src="https://unpkg.com/dropbox@4.0.3/dist/Dropbox-sdk.min.js"></script>
    </head>
    <body>

    <div id="obniz-debug"></div>
    <h1>Hello</h1>
    <div id="text"></div>
    
    <script>
      var obniz = new Obniz("5278-秘密");
    
                            obniz.onconnect = async function () {
        var dbx = new Dropbox.Dropbox({ accessToken: '<秘密>' });
        var button = obniz.wired("Button",  {signal:0, gnd:1});
        button.onchange = function(pressed){
          if (pressed) {
            dbx.filesUpload({path: '/obniz.txt', contents: "[Button Pressed]\n" + new Date(), mode: 'overwrite' })
              .catch(function(error) {
              alert(error);
            });
          }
        };
      }
    </script>
    

    </body>
    </html>



  • エラーが出ます
    Dropboxとの 連動なですが
    https://obniz.io/doc/lessons_dropbox
    こちらを参照に実行するのですが '{[object Object]}と
    エラーが出ています。コンソールには{local websocketエラーです。
    Event {isTrusted:true}}
    どうしてでしょうか?
    プログラムの内容は以下の通り
    方教えてください。
    誤字があったため修正しています。



  • @Makoto-Kaneko さん

    Dropboxのプログラムを試してみましたが、こちらでは問題なく動作しました。
    {[object Object]}と表示されるのはalert(error);のところでしょうか。
    Dropboxのエラーのため、おそらくaccessTokenが何かしら間違っているのかと思います。

    エラーの詳細を確認するために、
    alert(error);の下にconsole.log(error);とかいて試してみてもらえないでしょうか。



  • @Makoto-Kaneko said in Dropboxとの連携ができない:

    <秘密>

    ご連絡ありがとうございます
    アクセストークンの前の<秘密> <>を削除したら問題なくアップロードできました。初歩的なミスでしたありがとうございました。



  • たびたびすみません
    こんどアップロードの方試しているのですがテキストは無事に読み込むことはできたのですが読み込んだ後にエラーが出ていますLEDは光りません

    <html>
    <head>
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <script src="https://obniz.io/js/jquery-3.2.1.min.js"></script>
    <script src="https://unpkg.com/obniz@2.0.1/obniz.js"></script>
    <script src="https://unpkg.com/dropbox@4.0.3/dist/Dropbox-sdk.min.js"></script>
    </head>
    <body>

    <div id="obniz-debug"></div>

    <script>
    var obniz = new Obniz("OBNIZ_ID_HERE");
    var dbx = new Dropbox.Dropbox({ accessToken: '秘密' });

    obniz.onconnect = async function () {
    var led = obniz.wired("LED", {anode:0 , cathode:1 });
    // try download file
    const meta = await dbx.filesDownload({path: '/obniz.txt'})
    console.log('downloaded');

    // read file
    var blob = meta.fileBlob;
    var reader = new FileReader();
    reader.addEventListener("loadend", function() {
    // parse json
    console.log(reader.result);
    var obj = JSON.parse(reader.result);

    if (obj.led === "on") {
      led.on();
    } else if (obj.led === "blink") {
      led.blink();
    }
    

    });
    reader.readAsText(blob);

    }
    </script>
    </body>
    </html>
    なのですが エラーメッセージはコンソールに
    Script error.
    Object
    message:"Script error."
    url:""
    line:0
    colmun:0
    error:null

    と表記されます。これは0行目のエラーと表記されているようですがそもそも0行目がない気がするのですがどうしてでしょうか??
    たびたびの質問ですがよろしくおねがいたします。



  • @Makoto-Kaneko さん

    実行してみました。
    console.log(reader.result);でファイルの中身が一度コンソールに表示されているかと思いますが、そちらはJSONの形式で書かれているでしょうか。

    上のプログラムの書き込み方法だと、
    [Button Pressed] Thu Mar 14 2019 13:21:31 GMT+0900 (日本標準時)といった文章が保存されており、JSON形式ではないため、
    var obj = JSON.parse(reader.result);が失敗しているようです。



  • ありがとうございます
    私の勘違いでした。お手数おかけしました。



SUGGESTED TOPICS