JSP 애플리케이션에서 Google Oauth2 Javascript를 사용하고 있습니다.갑작스런 자바 스크립트 Google Oauth2 문제
<script src="https://apis.google.com/js/client.js"></script>
function googleOAuth(idx) {
alert ("Please ensure that popup windows are enabled in your browser. You will authenticate directly with Google in another window.");
var config = {
'client_id': '<%=googleClientId%>',
'scope': 'https://mail.google.com/ https://www.googleapis.com/auth/userinfo.email',
'response_type': 'token',
'immediate': false
};
gapi.auth.authorize(config, function() {
var token = gapi.auth.getToken();
/// ...use token
});
}
을 내 응용 프로그램까지 잘 작동했다 어제, 오늘의 권한을 부여하는 데 실패하고 크롬 콘솔은 말한다 :
이catch되지 않은 형식 오류 : 223 : 정의되지 않은 라인의 CB = gapi.loaded_0에서 함수 아니다 핸들러 함수가 아직 실행되지 않았습니다. 라인 (223)은 다음과 같습니다
var f=c.popup,g=c.after_redirect;f&&"keep_open"!=g&&(0,_.Uu)(window,f)
및 I는 g & & (0, UU는 _.) (창 F) 유효 JS 얼마나 보지 않는다.
누구도이 문제를보고 있습니까?
나는이 문제에 부딪 혔고, 혼자서 나쁜 변화를했다고 생각했지만 혼자가 아니었다. 그러나 'g && (0, _. Uu) (window, f)'는 유효한 JavaScript임을 지적해야합니다. 두 번째 피연산자의 값을 반환하는 쉼표 연산자를 사용합니다. 여기에서 의미를 갖기 위해서,'_.Uu'의 값은 표현식을 평가 한 후에 즉시 호출되기 때문에 함수 여야합니다. 'g && (window, fu) (window, f)'가 참으로 유효하다는 것을보기 위해서는'var g = true, _ = {Uu : alert}, f = null '을 실행 한 후 콘솔에서 실행 해보십시오. '. – Jakob
나는 본다; 당신이 옳다. (의도 된 사용법은 g && g (0, _.Uu) (window, f)이다.)이 관용구는 여러 곳에서 사용된다. 감사. – user1001630