我需要在我的nw.js
应用中集成谷歌联系人导入。我该如何创建google app
?当我将应用程序创建为Web应用程序时,它会询问redirect uri
哪些桌面应用程序无法使用。我不清楚如何实现桌面应用的谷歌集成。谁可以帮我这个事。 ?
答案 0 :(得分:0)
桌面应用程序的OAuth中有一个选项,而不是http://domain
,您将重定向到app://something
,您的应用程序将启动或接收回调。
为此,在您的应用程序中,您需要在新窗口中打开请求令牌URL(node-webkit应用程序中的新窗口)。
另外:google docs以及node-webkit github issue和other issue有关此事。
对我来说,我认为更好的是打开默认浏览器,用户已经通过身份验证的可能性很高,然后只需要点击"允许"。所以我在node-wekit app中启动简单的webserver并重定向到localhost。
中查看实施情况要打开默认浏览器,请使用命令"打开" (仅适用于mac)
child_process.spawn('open', [url]);
当用户重定向回来时,我也尝试关闭浏览器窗口,它可以工作但不总是。
response.writeHead(200, {"Content-Type": "text/html"});
response.end("<script type='text/javascript'>window.close();</script>");
可能是我在接收重定向时也应该激活一个窗口(还没试过):
var currentWin = require('gui').Window.get();
currentWin.focus();
如果谷歌不允许将localhost作为回调网址,您可以尝试使用某个域(甚至免费)并将其指向127.0.0.1或使用http://readme.localtest.me/