私はGoogleアプリを実装しようとしています。私は許可を受け入れた後サインアップをしようとすると、サインアップを設定し、アクセストークンを使用して私に返されたAPIのRestcallは、認証されていない使用の毎日の制限を返します。引き続き使用するにはサインアップエラーが必要です。私は既に2.0のキーでアプリを登録していますので、私が間違っていることを得ることはできません。ここに私のコードです。私のウェブアプリケーションにgoogleプラスログインしようとすると、「認証されていない使用の毎日の制限が超過しています」というメッセージが表示されます
Cientサイド
var clientId = "5XXX000XX.apps.googleusercontent.com";
var apiKey = "AIzaSyCAXE5JSa36jcC*X7HV40SBcIWBiVGUTBE";
var scopes = "https://www.googleapis.com/auth/plus.login";
var accessToken = null;
function initer(){
gapi.client.setApiKey(apiKey);
//alert("Hello init");
if($("#authorize-button").length>0)
$("#authorize-button").click(onLoginClick);
}
function onLoginClick(){
//$("#modalLoading").modal();
//alert("yeah");
gapi.auth.authorize({client_id: clientId, scope: scopes, immediate: false}, onConnect);
}
function onConnect(authResult) {
//alert("On connect");
if (authResult && !authResult.error) {
alert("Hey");
accessToken=authResult['access_token'];
triggerLogin();
} else {
alert("Error");
}
}
triggerLogin = function(){
alert("Triggering login");
$("#modalLoading").modal();
$.ajax({
url: window.config.site_root + "account/google_login",
type: "POST",
data: "access_token="+ accessToken,
success: onLogin,
error: function(){
onError("Logging In", "starting your session");
}
});
}
onLogin = function(login){
alert("Login start");
$("#modalLoading").modal("hide");
if(login.operation)
location.reload();
else{
alert("Register will start");
triggerRegistration();
}
}
triggerRegistration = function(){
$("#modalLoading").modal();
$.ajax({
url: window.config.site_root + "account/google_registration",
type: "POST",
data: "access_token="+accessToken,
success: onRegistration,
error: function(){
alert("An Error");
}
});
}
onRegistration = function(data){
alert("Handling register");
$("#modalLoading").modal("hide");
if(data.account_exists)
stage.showErrorModal("Account already registered", "There is already an account with that email address, are you sure you created an account using this login method?");
else
if(data.operation){
alert("Login now");
triggerLogin();
}
else{
alert("Error");
onError("Registering", "creating your account");
}
}
ここに私のサーバー側のコードは
public function google_registration()
{
$access_token = (isset($_POST["access_token"]) && !empty($_POST["access_token"])) ? $_POST["access_token"] : null;
$name = null;
$email = null;
$account_id = null;
$picture = null;
$gender = null;
try
{
if($access_token)
{
$me = file_get_contents("https://www.googleapis.com/plus/v1/people/me?access_token=".$access_token);
if($me)
{
$me = json_decode($me);
$name = $me->name.formatted;
$email = $me->email;
$account_id = $me->id;
$picture = $me->image;
$gender = ($me->gender == "female") ? 1 : 0;
}
}
}
catch(Exception $error)
{
// let the system handle the error quietly.
}
return $this->service_registration("google", $name, $email, $account_id, $picture, $gender);
}
GoogleコンソールでAPIを有効にしました。ありがとうございました:) – Sadman