Mặc dù mã sau hoạt động chính xác bằng Chrome (hiển thị cửa sổ bật lên yêu cầu quyền của người dùng cho phép truy cập vào dữ liệu bản đồ và địa điểm), IE 9 mở biểu mẫu bật lên, nhưng trống; khi gọi phương thức handleAuthClick. Tôi đã thử thêm setTimeouts nhưng không có hiệu lực. Tôi đảm bảo cửa sổ bật lên được cho phép và kiểm tra các url trang bật lên giống hệt nhau trong Chrome và IE. Có ai gặp phải vấn đề này? Hoặc ai đó có thể cung cấp một công việc xung quanh?Trình khách JavaScript oauth2 của Google không hoạt động trong IE 9
var clientId = '############.apps.googleusercontent.com';
var apiKey = '#A#A#A#A##';
var scopes = 'https://www.googleapis.com/auth/plus.me';
function handleClientLoad() {
gapi.client.setApiKey(apiKey);
window.setTimeout(checkAuth, 1);
}
function checkAuth() {
gapi.auth.authorize({ client_id: clientId, scope: scopes, immediate: true }, handleAuthResult);
}
function handleAuthResult(authResult) {
if (authResult && !authResult.error) {
makeApiCall();
} else {
}
}
function handleAuthClick(event) {
try {
window.setTimeout(function() {
gapi.auth.authorize({ client_id: clientId, scope: scopes, immediate: false }, handleAuthResult);
}, 10);
} catch (e) { alert(e.message); }
}
function makeApiCall() {
gapi.client.load('plus', 'v1', function() {
var request = gapi.client.plus.people.get({
'userId': 'me'
});
request.execute(function (resp) {
$(".google-signin").find("img").attr('src', resp.image.url).css('height', '32').css('width', '32');
$("#login-msg").text('Welcome: ' + resp.displayName);
$("img.vote").css('visibility', 'visible');
});
});
}
Tôi có cùng một vấn đề, nhưng giải pháp này không giúp được gì. Tôi vẫn nhận được cửa sổ bật lên trống thay vì thông tin thực ... – ronen
Cửa sổ bật lên có được bật không? (Thật đáng tiếc là Google chưa cung cấp bất kỳ giải pháp nào). –
có. popup được cho phép trong trình duyệt. Cửa sổ bật lên được hiển thị nhưng có nội dung trống. – ronen