我有一个按钮重定向到此功能
loginGoogle() {
this.cordovaOauthG.login().then((success) => {
console.log("Google Login DONE ");
if (success != null) {
console.log(JSON.stringify(success));
//alert(success.access_token);
if (success.access_token != null && success.access_token != '') {
var params = "google_id=" + success.access_token;
// var token = success.access_token;
// this.postLoginGoogle(params);
this.tesLogin();
}
}
}, (error) => {
alert(error);
});
}
这是http请求的功能
tesLogin(){
// var params = "google_id="+gid;
var params = "google_id="+'ya29.Ci_4ApeVHCD7av30Y82JRZPLG4T9ZUgmU1SNLUGIlVV_ufAcCoBc4ILqsY6Ah55i-g';
var headers = new Headers();
headers.append('Content-Type', 'application/x-www-form-urlencoded');
console.log(params);
this.http.post(Config.base_url + 'api/user-account/login-google', params, {headers: headers})
.map(res => res.json()).subscribe(data => {
console.log(data);
if (data.success) {
this.local.set('access_token', data.message);
this.menu.enable(true);
this.nav.setRoot(HomePage);
}
else {
this.doAlert("Incorrect email or password");
}
});
}
我的问题是,每当我尝试使用success.access_token进行调用时,它都无法正常工作 但如果我在没有任何参数的情况下调用请求(只是输入一些随机字符串),那么它可以工作 我尝试使用chrome中的移动检查器对其进行调试,无论是哪种方式都返回错误(工作帖子和工作帖子都没有返回错误) EXCEPTION:SyntaxError:意外的令牌<在位置1的JSON中
答案 0 :(得分:0)
我建议在标头中不在参数中发送身份验证令牌。这样的事情:
var headers = new Headers();
headers.append(' Content-Type',' application / x-www-form-urlencoded'); headers.append('授权',' Bearer' + authToken);