Próbowałem pobrać dane za pomocą facebook API w postaci danych wejściowych. Teraz wszystko poszło dobrze, dopóki nie spróbowałem pobrać lokalizacji bieżącego użytkownika.Uncaught TypeError: Nie można odczytać właściwości 'name' of undefined
Jeśli bieżący użytkownik udostępnił swoją lokalizację (Gdzie mieszka), to nie mam żadnych problemów. Jeśli jednak użytkownik nie udostępnił swojej lokalizacji na Facebooku, otrzymuję komunikat o błędzie: Uncaught TypeError: Cannot read property 'name' of undefined
Oto kod, którego używam. Jeśli masz jakiś pomysł jak go rozwiązać, prosimy o komentarz tutaj :)
<div id="fb-root"></div>
<script>
// Additional JS functions here
window.fbAsyncInit = function() {
FB.init({
appId : '*******', // App ID
status : true, // check login status
cookie : true, // enable cookies to allow the server to access the session
xfbml : true // parse XFBML
});
FB.getLoginStatus(function(response) {
if (response.status === 'connected') {
FB.api('/me', function(response) {
document.getElementById("user_login").value="FB - " + response.username;
document.getElementById("user_email").value=response.email;
document.getElementById("first_name").value=response.first_name;
document.getElementById("last_name").value=response.last_name;
document.getElementById("user_url").value=response.link;
document.getElementById("fbid").value=response.id;
if(response.location !== 'undefined')
{
document.getElementById("location").value=response.location.name;
alert(response.location.name);
}
document.getElementById("registerform").submit();
});
} else if (response.status === 'not_authorized') {
alert('error');
} else {
alert('Please Log In!');
}
});
};
// Load the SDK Asynchronously
(function(d){
var js, id = 'facebook-jssdk', ref = d.getElementsByTagName('script')[0];
if (d.getElementById(id)) {return;}
js = d.createElement('script'); js.id = id; js.async = true;
js.src = "//connect.facebook.net/en_US/all.js";
ref.parentNode.insertBefore(js, ref);
}(document));
</script>
Dzięki! Mój błąd ... –
@DoDoron: Bez obaw, cieszę się, że pomogło! Łatwy błąd. –