0
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/dropbox.js/0.9.0/dropbox.min.js"></script>

こんにちは、上記のファイルを使用してドロップボックス機能にアクセスしています。すべてのドロップボックス機能が含まれています。これをアプリケーションに含め、以下のコードを使用して、writefile 関数を使用してファイルをドロップボックスにアップロードしました。
これは chrome および Mozilla ブラウザーでは正常に機能していましたが、IE ではエラーが発生しました。
エラーは、「Microsoft JScript ランタイム エラー: アクセスが拒否されました」です。
この IE エラーを解決する方法と、このエラーが IE ブラウザでのみ発生する理由を教えてください。

 var UploadToDropbox = new Dropbox.Client({ key: consumerKey, secret: consumerSecret, token: accessToken, tokenSecret: accessTokenSecret, dropbox: true });
            UploadToDropbox.authenticate(function (error, UploadToDropbox) {
                if (error) {
                    alert('Something wrong here.');
                }
                else {
                    UploadToDropbox.writeFile("HelloWorld.txt", "Hello, world!\n", function (error, stat) {
                        if (error) {
                            return showError(error);  // Something went wrong.
                        }
                        alert("File saved to your dropbox successfully. ");
                    });

                }
            });

こんにちは、私の質問に返信していただきありがとうございます。そのように試みましたが、それでも同じエラーが発生します。

さて、このエラーを解決するにはどうすればよいでしょうか。

そして私もこれで試しました

<script type="text/javascript">
        // Hack to make dropbox.js works in IE8, IE9.
        if (!window.btoa) window.btoa = base64.encode; 
        if (!window.atob) window.atob = base64.decode;
    </script>

しかし、同じエラー。

4

2 に答える 2

1

IE を開く -> ツール -> インターネット オプション

[セキュリティ] タブで、[ゾーン] を [インターネット] に選択し、[カスタム レベル] ボタンをクリックして、[その他] の下の [ドメイン間でのデータ ソースへのアクセス] で [有効] にチェックを入れます。

IE は、DOM コントロールをトリガーする JavaScript イベントをうまく処理できないようです。したがって、そのようなイベント アクションが存在する場合は、削除してみてください。

通常、現在のセキュリティ設定では許可されていないプロパティの更新またはコンテンツへのアクセスを試みていることを意味します。

非推奨のメソッドの使用が原因で発生することもあります。

于 2013-02-07T11:05:28.110 に答える
0

あなたの質問のハックは必要ありません。atobdropbox.js は、IE <= 9 で使用される/の独自の実装をパッケージ化します。IE開発者ツール コンソールにアクセスしbtoaて試すことができます。Dropbox.Util.atobDropbox.Util.atob

base64 コード: https://github.com/dropbox/dropbox-js/blob/master/src/base64.coffee

まず、checkbox.js サンプル コードを実行して、IE の設定を確認してください。サンプルが機能する場合 (ログイン、タスクの追加、完了のマーク付け、削除が可能)、IE の設定は問題なく、問題は別の場所にあります。

チェックボックス.js: https://dl-web.dropbox.com/spa/pjlfdak1tmznswp/checkbox.js/public/index.html

次に、 を使用して HTML ページを提供していることを確認してくださいhttps://。Dropbox API サーバーは https を使用し、IE <= 9 は http ページから https サーバーへのクロスドメイン リクエストを許可しません。

第 3 に、呼び出しに token および tokenSecret パラメータは必要ありませんauthorize

それでも JScript ランタイム エラーが発生する場合は、原因となっているコード行を指摘していただけますか? また、dropbox.js GitHub ページで問題を開くことを検討してください。これにより、応答が速くなります。

于 2013-02-18T14:37:11.363 に答える