2016-04-28 396 views
2

我是FB圖形API的新手,我嘗試在我的網站中包含FB登錄,我遵循他們網站的官方FB登錄教程,但登錄後我得到以下錯誤:
無法連接到graph.facebook.com端口443:連接被拒絕

Failed to connect to graph.facebook.com port 443: Connection refused 

的login.php

<?php 
session_start(); 
require_once __DIR__ . '/fbsdk/src/Facebook/autoload.php'; 

$fb = new Facebook\Facebook([ 
'app_id' => 'xxx', 
'app_secret' => 'xxx', 
'default_graph_version' => 'v2.3', 
// . . . 
]); 

$helper = $fb->getRedirectLoginHelper(); 
$permissions = ['public_profile', 'email']; // optional 
$loginUrl = $helper->getLoginUrl('http://-myserver-/login-callback.php', $permissions); 

echo '<a href="' . $loginUrl . '">Log in with Facebook!</a>'; 
?> 

登錄-callback.php

<?php 
session_start(); 
require_once __DIR__ . '/fbsdk/src/Facebook/autoload.php'; 

$fb = new Facebook\Facebook([ 
'app_id' => 'xxx', 
'app_secret' => 'xxx', 
'default_graph_version' => 'v2.3', 
// . . . 
]); 



$helper = $fb->getRedirectLoginHelper(); 
try { 
$accessToken = $helper->getAccessToken(); 
} catch(Facebook\Exceptions\FacebookResponseException $e) { 
// When Graph returns an error 
echo 'Graph returned an error: ' . $e->getMessage(); 
exit; 
} catch(Facebook\Exceptions\FacebookSDKException $e) { 
// When validation fails or other local issues 
echo 'Facebook SDK returned an error: ' . $e->getMessage(); 
exit; 
} 

if (isset($accessToken)) { 
// Logged in! 
$_SESSION['facebook_access_token'] = (string) $accessToken; 

// Now you can redirect to another page and use the 
// access token from $_SESSION['facebook_access_token'] 
} 
?> 

例如,帆布app.php

<?php 
session_start(); 
require_once __DIR__ . '/fbsdk/src/Facebook/autoload.php'; 

$fb = new Facebook\Facebook([ 
'app_id' => 'xxx', 
'app_secret' => 'xxx', 
'default_graph_version' => 'v2.3', 
// . . . 
]); 



$helper = $fb->getCanvasHelper(); 
try { 
$accessToken = $helper->getAccessToken(); 
} catch(Facebook\Exceptions\FacebookResponseException $e) { 
// When Graph returns an error 
echo 'Graph returned an error: ' . $e->getMessage(); 
exit; 
} catch(Facebook\Exceptions\FacebookSDKException $e) { 
// When validation fails or other local issues 
echo 'Facebook SDK returned an error: ' . $e->getMessage(); 
exit; 
} 

if (isset($accessToken)) { 
// Logged in. 
} 
?> 

我已經搜查堆棧和谷歌,但我無法找到任何解決方案

+0

這很可能是您的服務器或網絡的配置問題,您確定您的IPV4和IPV6連接都允許您的機器聯繫graph.facebook.com嗎? – Igy

+0

使用Facebook API需要哪種類型的服務器?我目前使用Hostinger提供的免費服務器 –

+0

任何服務器都可以運行您正在構建網站的編程語言,並且具有與Facebook API服務器的網絡連接性 – Igy

回答

4

Hostinger的免費服務器不允許頁Fb的SDK的連接,通過提到客戶服務。

相關問題