Dropbox oauth window 不工作
Dropbox oauth window is not working
我正在将我的应用程序移植到 Electron,我惊讶地发现 Dropbox 身份验证在此环境中不起作用。不过它在 Chrome 中确实有效。
登录按钮保持禁用状态,标签显示在输入上。
控制台中显示以下消息:
The Content-Security-Policy directive 'worker-src' is implemented behind a flag which is currently disabled.
我正在 OS X 上使用 dropbox@2.5.7、electron@1.7.7 进行测试。
我发现了一个类似的问题,但它似乎使用了不同版本的 Electron,并且有不同的错误信息:
更新:
Content-Security-Policy
消息似乎与 Chrome 版本有关。 worker-src
指令在 Chrome 59 中引入,electron@1.7.7 随 Chrome 58.
一起提供
https://www.chromestatus.com/feature/5922594955984896
我用Chrome59自带的electron@1.8.0测试过,控制台消息没有了。但是授权页面的问题依然存在。
发生这种情况是因为 BrowserWindow
默认启用了 nodeIntegration
标志。这与捆绑 Dropbox
的 RequireJS
实现冲突。
因此解决方案是在创建浏览器时禁用 nodeIntegration
window:
const win = new electron.BrowserWindow({
width: 800,
height: 600,
webPreferences: {
nodeIntegration: false
}
});
win.loadURL(link);
这是一个小的演示项目:
https://github.com/kenjiru/electron-dropbox-sample-app
我正在将我的应用程序移植到 Electron,我惊讶地发现 Dropbox 身份验证在此环境中不起作用。不过它在 Chrome 中确实有效。
登录按钮保持禁用状态,标签显示在输入上。
控制台中显示以下消息:
The Content-Security-Policy directive 'worker-src' is implemented behind a flag which is currently disabled.
我正在 OS X 上使用 dropbox@2.5.7、electron@1.7.7 进行测试。
我发现了一个类似的问题,但它似乎使用了不同版本的 Electron,并且有不同的错误信息:
更新:
Content-Security-Policy
消息似乎与 Chrome 版本有关。 worker-src
指令在 Chrome 59 中引入,electron@1.7.7 随 Chrome 58.
https://www.chromestatus.com/feature/5922594955984896
我用Chrome59自带的electron@1.8.0测试过,控制台消息没有了。但是授权页面的问题依然存在。
发生这种情况是因为 BrowserWindow
默认启用了 nodeIntegration
标志。这与捆绑 Dropbox
的 RequireJS
实现冲突。
因此解决方案是在创建浏览器时禁用 nodeIntegration
window:
const win = new electron.BrowserWindow({
width: 800,
height: 600,
webPreferences: {
nodeIntegration: false
}
});
win.loadURL(link);
这是一个小的演示项目: https://github.com/kenjiru/electron-dropbox-sample-app