无法在HTML FB.api('/me')中使用Javascript获取Facebook个人资料图片

Unable to get Facebook profile picture using Javascript in HTML FB.api('/me'

本文关键字:Javascript 获取 资料图片 Facebook HTML FB api me      更新时间:2023-09-26

我试图获得Facebook个人资料图像与欢迎与包含用户个人资料名称为我的网站:www.bolbihari.com.

但是只显示文字而不显示图片。

这是我的代码:

<script>
  window.fbAsyncInit = function() {
    FB.init({
      appId      : '642539989247175',
      xfbml      : true,
      version    : 'v2.6'
    });
    function onLogin(response) {
  if (response.status == 'connected') {
    FB.api('/me', 'GET', {fields: 'first_name,last_name,name,id,picture.width(150).height(150)'}, function(data) {
      var welcomeBlock = document.getElementById('fb-welcome';);
      welcomeBlock.innerHTML = 'Hello ' + data.first_name + ','+ ' Welcome to BolBihari!';
	  var welcomeImage = document.getElementById('fb-welcome');
	  welcomeImage.innerHTML = "<img src="' + response.picture.data.url + '"/>";
    });
  }
}
FB.getLoginStatus(function(response) {
  // Check login status on load, and if the user is
  // already logged in, go directly to the welcome message.
  if (response.status == 'connected') {
    onLogin(response);
  } else {
    // Otherwise, show Login dialog first.
    FB.login(function(response) {
      onLogin(response);
    }, {scope: 'user_friends, public_profile', email'});
  }
});
// ADD ADDITIONAL FACEBOOK CODE HERE
  };
  (function(d, s, id){
     var js, fjs = d.getElementsByTagName(s)[0];
     if (d.getElementById(id)) {return;}
     js = d.createElement(s); js.id = id;
     js.src = "//connect.facebook.net/en_US/sdk.js";
     fjs.parentNode.insertBefore(js, fjs);
   }(document, 'script', 'facebook-jssdk'));
</script>
  

这是

的HTML代码

<div>
  <center><h2 id='fb-welcome'/></center>
    </div> 

访问我的网站www.bolbihari.com查看这段代码的运行文本部分

语法:response.picture.data.url是无效的,因为response是未定义的变量。

您正在收集FB的响应。api在data变量中;所以你应该使用data.picture.data.url