Я пытаюсь внедрить встраиваемую регистрацию WhatsApp, используя Facebook SDK, но fb.login () не возвращает ожидаемый код авторизации в функции обратного вызова. Ниже приведена моя реализация в качестве официальной документации здесь < /p>
Embedded Signup
// SDK initialization
window.fbAsyncInit = function() {
FB.init({
appId: 'appId', // my app ID
autoLogAppEvents: true,
xfbml: true,
version: 'v22.0' // Graph API version
});
};
// Session logging message event listener
window.addEventListener('message', (event) => {
if (event.origin !== "https://www.facebook.com" && event.origin !== "https://web.facebook.com") return;
try {
const data = JSON.parse(event.data);
if (data.type === 'WA_EMBEDDED_SIGNUP') {
console.log('message event: ', data); // Debugging log
}
} catch {
console.log('message event: ', event.data); // Debugging log
}
});
// Response callback
const fbLoginCallback = (response) => {
if (response.authResponse) {
const code = response.authResponse.code; // Expected authorization code
console.log('response: ', code); // Debugging log
} else {
console.log('response: ', response); // Debugging log
}
};
// Launch method and callback registration
const launchWhatsAppSignup = () => {
FB.login(fbLoginCallback, {
config_id: 'config_id', // my configuration ID
response_type: 'code',
override_default_response_type: true,
extras: {
setup: {},
featureType: '',
sessionInfoVersion: '3',
}
});
};
Login with Facebook
< /code>
Здесь простая функция в Django для запуска HTML -страницы < /p>
@csrf_exempt
def hello_view(request):
return render(request, 'test.html')
< /code>
Нажмите кнопку «Вход с помощью кнопки Facebook» запускает whilewatsappsignup (), но объект Authresponse в обратном вызове не содержит ожидаемого кода авторизации. Кажется, что Джанго не ждет, пока пользователь завершит регистрацию. Это никто сразу после того, как я нажимаю на кнопку. Однако, когда я пробую этот HTML в Native JavaScript, он работает должным образом. Какое решение для этого?
Подробнее здесь: https://stackoverflow.com/questions/794 ... embedded-s