HTML/JQuery для получения сообщений на стене с указанной страницы Facebook
Я пытался и пытался заставить Open Graph работать самостоятельно без какой-либо удачи. Я также пробовал альтернативные варианты, такие как вызов ajax работает в Chrome, Firefox, но не в IE?, но это имеет серьезные проблемы.
Я хотел бы получить полное решение для использования Open Graph для извлечения всех сообщений на стене с указанным идентификатором профиля Facebook. Он должен получить токен доступа без входа пользователя в Facebook. редактировать: у меня есть приложение с идентификатором приложения и секретом приложения. Разве я не могу использовать это, чтобы получить Access_token? Я хочу, чтобы пользователи без учетной записи Facebook могли видеть сообщения на стене этой детской страницы (в этом вся суть создания отдельного сайта).
Что бы это ни стоило, это сайт для ребенка с терминальной опухолью головного мозга... который оставляет меня в положении, когда я не могу предъявлять требования (например, потратить 50 долларов на SSL или "просто использовать Facebook"),
Я думаю, что единственное, что мне нужно, это получить access_token. Это не может быть так сложно.
4 ответа
- ВНИМАНИЕ: этот ответ отвечает на ваши вопросы и кто-то должен закрыть хотя бы один из них
поэтому мое решение этой проблемы простое; Вы все еще продолжаете использовать AJAX для выполнения запроса к Facebook, но не напрямую.
поэтому ваш код будет выглядеть примерно так:
$(function() {
$.ajax({
url : 'ajax-handler.php',
data : 'action=get_access_token',
type : 'GET',
dataType : 'json',
success : function(json) {
}
});
});
затем на ajax-handler.php
файл вы положите все вещи, необходимые для получения access_token
и другая информация.
псевдокод на стороне сервера (я использую здесь php) будет выглядеть примерно так, но вам нужно использовать php sdk для лучшего кодирования...
<?php
$action = $_GET['action'];
if (isset($action)) {
switch($action) {
case 'get_access_token' :
$query = array('client_id' => '####', 'client_secret' => '####', 'grant_type' => 'client_credentials');
$access_token = file_get_contents('https://graph.facebook.com/oauth/access_token?' . http_build_query($query));
//$access_token will be like access_token=asdas8dd98sada...
//but we don't use it here...
$app = file_get_contents('https://graph.facebook.com/######');
echo $app;
break;
}
}
?>
и вот результат:
- демо: http://bit.ly/JO59mO
У меня нет готового решения (извините, не хватает времени), но я могу предложить способ обойти междоменные запросы:
easyXDM - это библиотека Javascript, которая позволяет вам, как разработчику, легко обойти ограничения, установленные Единой политикой происхождения, что, в свою очередь, упрощает взаимодействие и предоставление API-интерфейсов JavaScript через границы домена.
Ваш аккаунт в Facebook дружит с его аккаунтом? Если это так, вы можете создать свой собственный токен доступа для своей учетной записи и просмотреть ленту ребенка, используя свой собственный токен, используя https://graph.facebook.com/id-or-alias/feed
Только общедоступные данные на графике могут быть доступны без действительного токена доступа. Список этих доступных публичных массивов можно найти здесь. Сообщения пользователя могут быть просмотрены с помощью /me/feed
Вызов API, но для этого действия требуется токен доступа.