<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/dropbox.js/0.9.0/dropbox.min.js"></script>
您正在使用上面的文件来访问Dropbox功能。它包含所有Dropbox功能。我把这个包括在我的申请中,我
使用下面的代码使用writefile函数将文件上传到dropbox
这在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>
但同样的错误。
答案 0 :(得分:1)
打开IE-&gt;工具 - &gt; InternetOptions
在“安全”选项卡中 - >选择“区域为互联网” - >单击“自定义级别按钮”&gt;选中Miscellaneous下的Domains中的Access数据源中的“启用”。
IE似乎无法很好地触发触发DOM控件的javascript事件。因此,如果它们存在,请尝试删除此类事件操作。
通常表示您尝试更新属性或访问当前安全设置下不允许的内容。
有时候,由于使用了弃用的方法,也会发生这种情况。
答案 1 :(得分:0)
你的问题中没有必要。 dropbox.js打包自己的atob
/ btoa
实现,在IE&lt; = 9上使用。您可以通过访问Dropbox.Util.atob
和Dropbox.Util.atob
来尝试IE开发者工具控制台。
base64代码:https://github.com/dropbox/dropbox-js/blob/master/src/base64.coffee
首先,请运行checkbox.js示例代码以检查您的IE设置。如果示例有效(您可以登录,添加任务,将其标记为已完成并将其删除),那么您的IE设置就可以了,问题出在其他地方。
checkbox.js:https://dl-web.dropbox.com/spa/pjlfdak1tmznswp/checkbox.js/public/index.html
其次,请确保您使用https://
为HTML页面提供服务。 Dropbox API服务器使用https,IE&lt; = 9不允许从http页面到https服务器的跨域请求。
第三,您不应该在authorize
调用中使用token和tokenSecret参数。
如果仍然遇到JScript运行时错误,是否可以指向导致它的代码行?另外,请考虑在dropbox.js GitHub页面上打开一个问题。这将获得更快的响应。