Según Facebook - Authentication within a Canvas Page Document, dicen que obtendremos un signed_request
que consiste en un objeto JSON. Ahora dicen que signed_request
se puede obtener a través de $_POST['signed_request']
Estoy de acuerdo que está trabajando para mí.cómo leer facebook signed_request para obtener user_id
Ahora bien, según si el usuario se registra en i va a obtener un valor objeto JSON como esto: -
{
"expires":UNIXTIME_WHEN_ACCESS_TOKEN_EXPIRES,
"algorithm":"HMAC-SHA256",
"issued_at":UNIXTIME_WHEN_REQUEST_WAS_ISSUED,
"oauth_token":"USER_ACCESS_TOKEN",
"user_id":"USER_ID",
"user":{
"country":"ISO_COUNTRY_CODE",
"locale":"ISO_LOCALE_CODE",
...
}
}
ahora quiero buscar el user_id
de esto, así que estoy usando esta pieza de código, pero no su trabajo: -
if(isset($_POST['signed_request']))
{
echo 'YES';
$json = $_POST['signed_request'];
$obj = json_decode($json);
print $obj->{'user_id'};
}
Sólo imprimir el YES
. ¿Por que es esto entonces?
He leído en alguna parte que sin la autenticación de la aplicación no podré extraer el user_id
pero de acuerdo con el facebook, este es el primer paso y la autenticación de la aplicación sería el 4to. Soy nuevo en esto, si alguien puede ayudarme, será de gran ayuda. Gracias.
Si haces un 'print_r ($ _ POST)', ¿qué ves? – Brad
¿Qué es lo que realmente ve cuando prueba 'print_r ($ _ POST)'? – Brad
@Brad cuando 'print_r ($ _POST [ 'signed_request']);' me sale exactamente este valor 'cnMQQpKShmtfcXXEAjNrazO7AZxAqCuZ0aIA-K1L-P8.qgytuisdhrl0aG0iOiJITUFDLVNIQTI1NiI sImV4cGlyZXMiOjEzNDUwNTM2MDAsImlzc3VlZF9hdCI6MTM0NTA0ODYwOCpoemi1dGhfdG9rZW4iOiJB QUFFOGZCWW1sN2NCQUJHVWZIb1VZUGdMcngwdjBURFlSdVFiNHNQR2pSMDRUNnZKZHkzWkFYU2RBYWNiV nFtMHJRZTFKZ2lrWkFRWkFJR2RPb0JuQ0JiVGxLOGpuUXlCSVpDWkJsWHdzWG5XbHg5VVZEV1dkIiwicG FnZSI6eyJpZCI6IjI2OTY3MDc5NjQ4MDcxOCIsImxpa2VkIjpmYWxzZSwiYWRtaW4iOmZhbHNlfSwidXN lciI6eyJjb3VudHJ5IjoiaW4iLCJsb2NhbGUiOiJlbl9JTiIsImFnZSI6eyJtaW4iOjIxfX0sInVzZXJf aWQiOiIxNTc2NDU1NjQ5In0' –