我正在尝试使用google oAuth创建登录页面。 为此我创建了一个clientID。 在ClientID中,我已经为Android创建了,因为我相信我的应用程序将在Android设备上运行。
创建客户端ID - >已安装的应用程序 - >的Android
我已经完成了keytooling并使用SHA1签名并创建了一个clientID
然后我创建了公共API访问。在这里我创建了一个 Android Key 。我提供了com名称和SHA1详细信息。由于我使用的是 INTEL XDK ,因此很容易从那里获得COM名称窗格。
在我的javascript代码中,我已经做了类似的事情来构建URL。
var clientID =“client_id =”; var responeType = “&安培; RESPONSE_TYPE =代码”; var scope =“& scope = profile”; var范围 = “&安培;范围= https://www.googleapis.com/auth/calendar.readonly”; var redirectURL =“& redirect_uri = urn:ietf:wg:oauth:2.0:oob”; var url = “?https://accounts.google.com/o/oauth2/auth” + clientID的+ responeType +范围+的redirectUrl + “&安培; approval_prompt =汽车”;
然后我使用XHRRequest来调用此URL
var xhr = new XMLHttpRequest(); xhr.open( “GET”,网址,虚假);
xhr.onload = function(){ if(xhr.readyState == 4&& xhr.status == 200) {
的console.log(this.response); var resp = this.response;} } xhr.onerror = function(e) { alert("Error : "+e) } xhr.send();
我有一个带有事件监听器的按钮。 我是android的新手,尤其是oAuth。我遇到了各种各样的错误 如
请复制此代码,切换到您的应用程序并将其粘贴到那里:
当我点击按钮时,我没有看到谷歌要求许可的任何登录页面 但我可以看到数据来自console.log()。
我在这里做错了什么。
如果有任何方法可以使用html5创建Hybrid APp,请分享。 如果我写错了也请告诉我。请指导我。
-S
答案 0 :(得分:0)
您可以将此jQuery
插件用于Oauth2:https://github.com/krisrak/jquery-cordova-oauth2
适用于Intel XDK
您所要做的就是使用您的Oauth客户端参数修改下面的调用,回调将使用access_token开始拨打电话
$.oauth2({
auth_url: 'https://accounts.google.com/o/oauth2/auth',
response_type: 'code',
token_url: 'https://accounts.google.com/o/oauth2/token',
logout_url: 'https://accounts.google.com/logout',
client_id: 'CLIENT-ID-FROM-GOOGLE',
client_secret: 'CLIENT-SECRET-FROM-GOOGLE',
redirect_uri: 'http://www.yourwebsite.com/oauth2callback',
other_params: {scope:'profile'}
}, function(token, response){
makeAPICalls(token);
}, function(error, response){
alert(error);
});