Javascript 尝试使用c#asp.net登录时出现google API重定向_uri_不匹配错误
我需要登录我的网页扔谷歌。我得到了我的clientID并在Google控制台中设置了重定向uri路径,但当我尝试登录时,它给了我以下错误。我正在我的asp.net页面上集成此功能 错误: 400这是个错误。Javascript 尝试使用c#asp.net登录时出现google API重定向_uri_不匹配错误,javascript,asp.net,google-oauth,google-login,Javascript,Asp.net,Google Oauth,Google Login,我需要登录我的网页扔谷歌。我得到了我的clientID并在Google控制台中设置了重定向uri路径,但当我尝试登录时,它给了我以下错误。我正在我的asp.net页面上集成此功能 错误: 400这是个错误。 错误:重定向\u uri\u不匹配 应用:odiyaDoctor 您可以通过以下地址向此应用程序的开发人员发送电子邮件:odiyadoctor@gmail.com 请求中的重定向URI:与注册的重定向URI不匹配 我的要求是当用户在第一页(UserLogin.aspx)上通过谷歌登录时,成功
错误:重定向\u uri\u不匹配
应用:odiyaDoctor
您可以通过以下地址向此应用程序的开发人员发送电子邮件:odiyadoctor@gmail.com
请求中的重定向URI:与注册的重定向URI不匹配 我的要求是当用户在第一页(
UserLogin.aspx
)上通过谷歌登录时,成功登录后,下一页(即立即帮助.aspx
)将出现。我在下面解释我所有的代码和谷歌认证
UserLogin.aspx:
<a href="#" class="btn btn-large btn-block btn-google" onclick="googleLogin();" >Login with Google <i class="fa fa-google-plus"></i></a>
<script>
var OAUTHURL = 'https://accounts.google.com/o/oauth2/auth?';
var VALIDURL = 'https://www.googleapis.com/oauth2/v1/tokeninfo?access_token=';
var SCOPE = 'https://www.googleapis.com/auth/userinfo.profile https://www.googleapis.com/auth/userinfo.email';
var CLIENTID = '*************************g96b1elfa8.apps.googleusercontent.com';
var REDIRECT = 'http://localhost/immediateHelp.aspx';
var LOGOUT = 'http://accounts.google.com/Logout';
var TYPE = 'token';
var _url = OAUTHURL + 'scope=' + SCOPE + '&client_id=' + CLIENTID + '&redirect_uri=' + REDIRECT + '&response_type=' + TYPE;
var acToken;
var tokenType;
var expiresIn;
var user;
var loggedIn = false;
function googleLogin() {
var win = window.open(_url, "windowname1", 'width=800, height=600');
var pollTimer = window.setInterval(function () {
try {
console.log(win.document.URL);
if (win.document.URL.indexOf(REDIRECT) != -1) {
window.clearInterval(pollTimer);
var url = win.document.URL;
acToken = gup(url, 'access_token');
tokenType = gup(url, 'token_type');
expiresIn = gup(url, 'expires_in');
win.close();
validateToken(acToken);
}
} catch (e) {
console.log('its error', e);
}
}, 500);
}
function validateToken(token) {
$.ajax({
url: VALIDURL + token,
data: null,
success: function (responseText) {
getUserInfo();
loggedIn = true;
window.location.href = "immediateHelp.aspx";
},
dataType: "jsonp"
});
}
function getUserInfo() {
$.ajax({
url: 'https://www.googleapis.com/oauth2/v1/userinfo?access_token=' + acToken,
data: null,
success: function (resp) {
user = resp;
console.log('user info',user);
$('#imgHolder').attr('src', user.picture);
},
dataType: "jsonp"
});
}
function gup(url, name) {
name = name.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]");
var regexS = "[\\#&]" + name + "=([^&#]*)";
var regex = new RegExp(regexS);
var results = regex.exec(url);
if (results == null)
return "";
else
return results[1];
}
</script>
这里我需要当用户成功登录时,它将重定向到立即帮助.aspx
页面,用户可以在该页面中注销。请帮助我解决这些错误
`"http://localhost/immediateHelp.aspx" != "https://localhost/immediateHelp.aspx"
URL必须是字符完美的在google开发者控制台中,您需要添加重定向uri@Dalm到:我已经添加了。检查上面的帖子。“请求中的重定向uri:与注册的重定向uri不匹配。”谷歌没有撒谎说你没有它。而且看起来你所有的代码都是JavaScript,是否真的应该标记为.net和asp.net?第二个错误的内容可能重复。这将如何解决。第二个错误?这是StackOverflow。每个线程一个问题。
`"http://localhost/immediateHelp.aspx" != "https://localhost/immediateHelp.aspx"