Я прошел эту же проблему и решил ее так: когда пользователь запускает ваше приложение по умолчанию, вы запрашиваете разрешение на доступ к его общедоступной информации профиля, которая включает в себя реальный идентификатор, имя и некоторые другие. Вы просто сохраняете данные пользователя (id, имя и т. Д.) В базе данных. Таким образом, вы отслеживаете всех людей, использующих ваше приложение, и они могут взаимодействовать друг с другом.
JavaScript Пример:
window.fbAsyncInit = function() {
FB._https = true;
console.log('here');
FB.init({ appId: 'xxxxxxxxxxxxxxxx', cookie: true, xfbml: true, oauth: true, version : 'v2.0'});
Login();
};
function Login() {
FB.login(function(response) {
if (response.authResponse){
checkUser();
}
else{
console.log('User cancelled login or did not fully authorize.');
}
}
);
}
function checkUser() {
FB.api('/me', function(response) {
$.ajax({
type: "get",
url: "cgi-bin/checkUser.cgi",
cache: false,
data: {"user_name" : response.name, "u_id" : response.id, "link" : response.link},
success: function() //onSuccess,
{
console.log("user " + response.name + " checked!");
},
error: function()
{
console.log("Error with server connection on user checking");
}
});
});
}
Я не знаю, на каком языке вы пишете приложение, но я считаю, что в каждом языке вы должны вызвать функцию «Вход», который запрашивает у пользователя разрешений и в основном получает доступ к информации.
Если ваше приложение было запущено до версии 2.0, вы все равно можете использовать v1.0, но эта функция будет удалена в ближайшее время. Проверьте Редактировать в моем ответе. Этот JS-код в основном отправляет запрос AJAX на серверный скрипт с информацией о пользователе. – DanielLazarov
Ваш подход не подходит для моей цели. Сохранение информации о пользователе FB (например, имя, имя, фотография и т. Д.) В БД не имеет никакого смысла, поскольку любое изменение, внесенное пользователем в его профиль, не будет отражено в DB.I need решение, в котором я могу передать глобальный идентификатор пользователя, графику api v2.0, который не является моим другом, и все же собирать его данные, такие как имя, рис. и т. д. Спасибо за вашу помощь в любом случае :) –
Если ваше приложение имеет пользовательский вы можете просто передать свой ID графику api и просмотреть информацию, к которой у вас есть доступ. И, сохраняя информацию в БД, я не хотел сохранять всю свою информацию, которая доступна через FB api, я имел в виду, что если вы хотите отслеживать людей, использующих ваше приложение, вы можете просто сохранить их идентификатор в БД. Через ID вы можете получить доступ ко всем имеющимся разрешениям для доступа к api. – DanielLazarov