{"id":6455,"date":"2013-02-12T01:30:04","date_gmt":"2013-02-12T01:30:04","guid":{"rendered":"https:\/\/dev.railscarma.com\/how-to-get-user-information-from-facebook-to-rails-application\/"},"modified":"2021-06-07T08:00:44","modified_gmt":"2021-06-07T08:00:44","slug":"como-obtener-informacion-del-usuario-de-facebook-a-la-aplicacion-rails","status":"publish","type":"post","link":"https:\/\/www.railscarma.com\/es\/blog\/articulos-tecnicos\/como-obtener-informacion-del-usuario-de-facebook-a-la-aplicacion-rails\/","title":{"rendered":"\u00bfC\u00f3mo obtener informaci\u00f3n del usuario de Facebook a la aplicaci\u00f3n Rails?"},"content":{"rendered":"<div data-elementor-type=\"wp-post\" data-elementor-id=\"6455\" class=\"elementor elementor-6455\" data-elementor-post-type=\"post\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-46d892ca elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"46d892ca\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-11286f81\" data-id=\"11286f81\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-6db6e1d6 elementor-widget elementor-widget-text-editor\" data-id=\"6db6e1d6\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p style=\"text-align: justify;\">con facebook <em>API gr\u00e1fica<\/em> y la creaci\u00f3n de la <em>Protocolo de gr\u00e1fico abierto<\/em>Ahora es m\u00e1s f\u00e1cil que nunca leer y escribir datos desde Facebook en la aplicaci\u00f3n Rails y volver al &quot;gr\u00e1fico social&quot;. Estas son algunas de las posibilidades:<\/p>\n\n<ul style=\"text-align: justify;\">\n \t<li style=\"text-align: justify;\">Podr\u00edas convertir tu p\u00e1gina web en una p\u00e1gina similar a Facebook con todas las funciones, como si estuvieras dentro de Facebook.<\/li>\n \t<li style=\"text-align: justify;\">Puede brindarles a sus usuarios la posibilidad de iniciar sesi\u00f3n con sus credenciales de Facebook y personalizar su experiencia con par\u00e1metros tomados de sus perfiles de Facebook.<\/li>\n \t<li style=\"text-align: justify;\">Podr\u00edas agregar un <em>Como<\/em> a cada objeto de su p\u00e1gina, como im\u00e1genes, canciones, art\u00edculos, etc., y d\u00edgales a sus usuarios a qu\u00e9 amigos suyos les ha gustado su contenido.<\/li>\n<\/ul>\n<h4 style=\"text-align: justify;\" align=\"LEFT\"><strong>Pasos para crear una solicitud y obtener informaci\u00f3n<\/strong><\/h4>\n<p style=\"text-align: justify;\">Se necesita un app_id de Facebook y api_secret_key<\/p>\n<p style=\"text-align: justify;\">ve al enlace<\/p>\n<p style=\"text-align: justify;\">https:\/\/developers.facebook.com\/apps<\/p>\n\n<h5 style=\"text-align: justify;\">1. <strong>Crear nueva aplicaci\u00f3n en facebook<\/strong><\/h5>\n<ul style=\"text-align: justify;\">\n \t<li>\n<p align=\"LEFT\">Indique el nombre de la aplicaci\u00f3n (ejemplo: sample_app)<\/p>\n<\/li>\n \t<li>\n<p align=\"LEFT\">entonces necesitamos completar la siguiente informaci\u00f3n<\/p>\n<\/li>\n \t<li>\n<p align=\"LEFT\">Dominio de la aplicaci\u00f3n: localhost<\/p>\n<\/li>\n \t<li>\n<p align=\"LEFT\">URL del sitio web: <a href=\"http:\/\/localhost\/3000\/\">http:\/\/localhost\/3000\/<\/a><\/p>\n<p align=\"LEFT\"><\/p>\n<\/li>\n<\/ul>\n<p style=\"text-align: justify;\"><strong>En la misma p\u00e1gina podemos encontrar App Id y App Secret. Parece que<\/strong><\/p>\n<p style=\"text-align: justify;\">ID de la aplicaci\u00f3n: 378271044441102<\/p>\n<p style=\"text-align: justify;\">Secreto de la aplicaci\u00f3n: 567772fd2bef4dda7a404b02r4567c758<\/p>\n\n<h5 style=\"text-align: justify;\">2. <strong>Crear aplicaci\u00f3n Rails<\/strong><\/h5>\n<p style=\"text-align: justify;\"><strong> Los siguientes son los pasos para crear<a href=\"https:\/\/www.railscarma.com\/es\/\" target=\"_blank\" rel=\"noopener noreferrer\"> aplicaci\u00f3n de rieles<\/a><\/strong><\/p>\n\n<ul style=\"text-align: justify;\">\n \t<li>rieles nuevo facebook_app<\/li>\n \t<li>sudo gem instalar fb_graph<\/li>\n \t<li>a\u00f1adir a Gemfilegem \u201cfb_graph\u201d<\/li>\n \t<li>instalaci\u00f3n del paquete sudo<\/li>\n \t<li>crear una p\u00e1gina de \u00edndice para fb_loginrails generar un \u00edndice de p\u00e1ginas del controlador<\/li>\n \t<li>establezca el \u00edndice en la p\u00e1gina ra\u00edz en config\/routes.rbroot :to =&gt; \u201cpages#home\u201d<\/li>\n \t<li>crear autenticaci\u00f3n para la aplicaci\u00f3n (autenticaci\u00f3n simple)<\/li>\n \t<li>creando un controlador de Facebook y un modelo de Facebook con :Identifier =&gt; string:access_token =&gt;string<\/li>\n \t<li>los rieles generan el identificador de Facebook del andamio: cadena access_token: cadena<\/li>\n \t<li>Los rieles generan el espect\u00e1culo del panel del controlador.<\/li>\n \t<li>En el controlador de p\u00e1ginas, redirija la p\u00e1gina al panel: muestre si ya est\u00e1 autenticadocontroller\/pages_controller.rb<\/li>\n<\/ul>\n<p style=\"text-align: justify;\" align=\"LEFT\">\u00edndice de definici\u00f3n<\/p>\n<p style=\"text-align: justify;\" align=\"LEFT\">\u00bfRedirect_to panel_url si est\u00e1 autenticado?<\/p>\n<p style=\"text-align: justify;\" align=\"LEFT\">fin<\/p>\n<p style=\"text-align: justify;\">Si no est\u00e1 autenticado, se cargar\u00e1 root_path, es decir. p\u00e1ginas\/\u00edndice, cree fb_login en esta p\u00e1gina para autenticarse.<\/p>\n<p style=\"text-align: justify;\">&lt;% si est\u00e1 autenticado? %&gt;<\/p>\n<p style=\"text-align: justify;\">&lt;p&gt;&lt;%= link_to &ldquo;Logout&rdquo;, facebook_path, :method =&gt; :eliminar %&amp;gt;&lt;\/p&gt;<\/p>\n<p style=\"text-align: justify;\">&lt;% m\u00e1s %&gt;<\/p>\n<p style=\"text-align: justify;\">&lt;fb:login-button length=\u201dlong\u201d onlogin=\u201dlocation.href = \u2018 &#039;\u201d alcance = \u201d&lt;% =<\/p>\n<p style=\"text-align: justify;\">Facebook.config[:alcance] %&gt;\u201d&gt;<\/p>\n<p style=\"text-align: justify;\">&lt;% final %&gt;<\/p>\n\n<h5 style=\"text-align: justify;\"><strong>3. Pegue el siguiente c\u00f3digo de secuencia de comandos (para el bot\u00f3n de inicio de sesi\u00f3n de Facebook) <\/strong><\/h5>\n<p style=\"text-align: justify;\">&lt;script src=&#8221;https:\/\/www.railscarma.com\/wp-content\/uploads\/2013\/02\/all.js&#8221;&gt;&lt;\/script&gt;<\/p>\n<p style=\"text-align: justify;\">&lt;script&gt;<\/p>\n<p style=\"text-align: justify;\">FB.init({<\/p>\n<p style=\"text-align: justify;\">appId: \u201c&lt;%= Facebook.config[:client_id] %&gt;\u201d,<\/p>\n<p style=\"text-align: justify;\">galleta: cierto,<\/p>\n<p style=\"text-align: justify;\">xfbml: verdadero,<\/p>\n<p style=\"text-align: justify;\">juramento: verdadero,<\/p>\n<p style=\"text-align: justify;\">estado: verdadero<\/p>\n<p style=\"text-align: justify;\">});<\/p>\n<p style=\"text-align: justify;\">&lt;\/script&gt;<\/p>\n<p style=\"text-align: justify;\">&lt;script type=&#8221;text\/javascript&#8221;&gt;<\/p>\n<p style=\"text-align: justify;\">$(funci\u00f3n () {<\/p>\n<p style=\"text-align: justify;\">&lt;% si flash[:error] %&gt;<\/p>\n<p style=\"text-align: justify;\">$.gritter.add({<\/p>\n<p style=\"text-align: justify;\">t\u00edtulo: \u201c&lt;%= flash[:error][:t\u00edtulo] %&gt;\u201d,<\/p>\n<p style=\"text-align: justify;\">texto: \u201c&lt;%= flash[:error][:mensaje] %&gt;\u201d,<\/p>\n<p style=\"text-align: justify;\">imagen: \u201c&lt;%= flash[:error][:imagen] %&gt;\u201d,<\/p>\n<p style=\"text-align: justify;\">tiempo: 5000<\/p>\n<p style=\"text-align: justify;\">});<\/p>\n<p style=\"text-align: justify;\">&lt;% elsif flash[:aviso] %&gt;<\/p>\n<p style=\"text-align: justify;\">$.gritter.add({<\/p>\n<p style=\"text-align: justify;\">t\u00edtulo: \u201c&lt;%= flash[:aviso][:t\u00edtulo] %&gt;\u201d,<\/p>\n<p style=\"text-align: justify;\">texto: \u201c&lt;%= flash[:aviso][:mensaje] %&gt;\u201d,<\/p>\n<p style=\"text-align: justify;\">imagen: \u201c&lt;%= flash[:aviso][:imagen] %&gt;\u201d,<\/p>\n<p style=\"text-align: justify;\">tiempo: 3000<\/p>\n<p style=\"text-align: justify;\">});<\/p>\n<p style=\"text-align: justify;\">&lt;% final %&gt;<\/p>\n<p style=\"text-align: justify;\">});<\/p>\n<p style=\"text-align: justify;\">&lt;\/script&gt;<\/p>\n<p style=\"text-align: justify;\">El c\u00f3digo anterior se utiliza para autenticar al usuario a trav\u00e9s de Facebook; despu\u00e9s de autenticar al usuario, debe redirigirlo a la URL del panel para mostrar la informaci\u00f3n obtenida de Facebook. Algunas configuraciones de Facebook deben ser c\u00f3digo en el modelo y el controlador de Facebook.<\/p>\n<p style=\"text-align: justify;\">En controlador\/facebook_controller.rb.<\/p>\n<p style=\"text-align: justify;\">before_filter:require_authentication,:solo =&gt;:destruir<\/p>\n<p style=\"text-align: justify;\">rescate_de Rack::OAuth2::Cliente::Error, :con =&gt; :oauth2_error<\/p>\n<p style=\"text-align: justify;\"># maneja la cookie de autenticaci\u00f3n de Facebook generada por el SDK de JavaScript<\/p>\n<p style=\"text-align: justify;\">definitivamente espect\u00e1culo<\/p>\n<p style=\"text-align: justify;\">autenticaci\u00f3n = Facebook.auth.from_cookie(cookies)<\/p>\n<p style=\"text-align: justify;\">autenticar Facebook.identificar (auth.usuario)<\/p>\n<p style=\"text-align: justify;\">redirigir_al panel_url<\/p>\n<p style=\"text-align: justify;\">fin<\/p>\n<p style=\"text-align: justify;\"># maneja el flujo normal de OAuth: inicio<\/p>\n<p style=\"text-align: justify;\">Definitivamente nuevo<\/p>\n<p style=\"text-align: justify;\">cliente = Facebook.auth(callback_facebook_url).cliente<\/p>\n<p style=\"text-align: justify;\">redirigir_al cliente.autorizaci\u00f3n_uri(<\/p>\n<p style=\"text-align: justify;\">:alcance =&gt; Facebook.config[:alcance]<\/p>\n<p style=\"text-align: justify;\">)<\/p>\n<p style=\"text-align: justify;\">fin<\/p>\n<p style=\"text-align: justify;\"># maneja el flujo normal de OAuth: devoluci\u00f3n de llamada<\/p>\n<p style=\"text-align: justify;\">definitivamente crear<\/p>\n<p style=\"text-align: justify;\">cliente = Facebook.auth(callback_facebook_url).cliente<\/p>\n<p style=\"text-align: justify;\">client.authorization_code = par\u00e1metros[:c\u00f3digo]<\/p>\n<p style=\"text-align: justify;\">token_acceso = cliente.token_acceso! :client_auth_body<\/p>\n<p style=\"text-align: justify;\">usuario = FbGraph::Usuario.me(access_token).fetch<\/p>\n<p style=\"text-align: justify;\">autenticar Facebook.identificar (usuario)<\/p>\n<p style=\"text-align: justify;\">redirigir_al panel_url<\/p>\n<p style=\"text-align: justify;\">fin<\/p>\n<p style=\"text-align: justify;\">definitivamente destruir<\/p>\n<p style=\"text-align: justify;\">no autenticar<\/p>\n<p style=\"text-align: justify;\">redirigir_a ra\u00edz_url<\/p>\n<p style=\"text-align: justify;\">fin<\/p>\n<p style=\"text-align: justify;\">privado<\/p>\n<p style=\"text-align: justify;\">def oauth2_error(e)<\/p>\n<p style=\"text-align: justify;\">flash[:error] = {<\/p>\n<p style=\"text-align: justify;\">:t\u00edtulo =&gt; e.respuesta[:error][:tipo],<\/p>\n<p style=\"text-align: justify;\">:mensaje =&gt; e.respuesta[:error][:mensaje]<\/p>\n<p style=\"text-align: justify;\">}<\/p>\n<p style=\"text-align: justify;\">redirigir_a ra\u00edz_url<\/p>\n<p style=\"text-align: justify;\">fin<\/p>\n\n<h5 style=\"text-align: justify;\"><strong>4. Pega este c\u00f3digo en facebook.rb<\/strong><\/h5>\n<p style=\"text-align: justify;\">perfil definido<\/p>\n<p style=\"text-align: justify;\">@profile ||= FbGraph::Usuario.me(self.access_token).fetch<\/p>\n<p style=\"text-align: justify;\">fin<\/p>\n<p style=\"text-align: justify;\">clase &lt;&lt; yo<\/p>\n<p style=\"text-align: justify;\">ampliar ActiveSupport::Memoizable<\/p>\n<p style=\"text-align: justify;\">configuraci\u00f3n de definici\u00f3n<\/p>\n<p style=\"text-align: justify;\">@config ||= si ENV[&#039;fb_client_id&#039;] &amp;&amp; ENV[&#039;fb_client_secret&#039;] &amp;&amp; ENV[&#039;fb_scope&#039;] &amp;&amp; ENV[&#039;fb_canvas_url&#039;]<\/p>\n<p style=\"text-align: justify;\">{<\/p>\n<p style=\"text-align: justify;\">:client_id =&gt; ENV[&#039;fb_client_id&#039;],<\/p>\n<p style=\"text-align: justify;\">:client_secret =&gt; ENV[&#039;fb_client_secret&#039;],<\/p>\n<p style=\"text-align: justify;\">: alcance =&gt; ENV[&#039;fb_scope&#039;],<\/p>\n<p style=\"text-align: justify;\">:canvas_url =&gt; ENV[&#039;fb_canvas_url&#039;]<\/p>\n<p style=\"text-align: justify;\">}<\/p>\n<p style=\"text-align: justify;\">dem\u00e1s<\/p>\n<p style=\"text-align: justify;\">YAML.load_file(\u201c#{Rails.root}\/config\/facebook.yml\u201d)[Rails.env].symbolize_keys<\/p>\n<p style=\"text-align: justify;\">fin<\/p>\n<p style=\"text-align: justify;\">rescate Errno::ENOENT =&gt; e<\/p>\n<p style=\"text-align: justify;\">generar StandardError.new (&quot;No se pudo cargar config\/facebook.yml&quot;).<\/p>\n<p style=\"text-align: justify;\">fin<\/p>\n<p style=\"text-align: justify;\">aplicaci\u00f3n definitiva<\/p>\n<p style=\"text-align: justify;\">FbGraph::Application.new config[:client_id], :secret =&gt; config[:client_secret]<\/p>\n<p style=\"text-align: justify;\">fin<\/p>\n<p style=\"text-align: justify;\">def autenticaci\u00f3n(redirect_uri = nulo)<\/p>\n<p style=\"text-align: justify;\">FbGraph::Auth.new config[:client_id], config[:client_secret], :redirect_uri =&gt; redirigir_uri<\/p>\n<p style=\"text-align: justify;\">fin<\/p>\n<p style=\"text-align: justify;\">def identificar(fb_user)<\/p>\n<p style=\"text-align: justify;\">_fb_user_ = buscar_o_inicializar_por_identificador(fb_user.identifier.try(:to_s))<\/p>\n<p style=\"text-align: justify;\">_fb_user_.access_token = fb_user.access_token.access_token<\/p>\n<p style=\"text-align: justify;\">_fb_user_.save!<\/p>\n<p style=\"text-align: justify;\">_fb_usuario_<\/p>\n<p style=\"text-align: justify;\">fin<\/p>\n<p style=\"text-align: justify;\">fin<\/p>\n<p style=\"text-align: justify;\">Ahora estamos listos para obtener informaci\u00f3n del usuario si se autentic\u00f3, una vez que se autentique, la p\u00e1gina se redirigir\u00e1 a panel_url.<\/p>\n<p style=\"text-align: justify;\">c\u00f3digo en controlador\/dashboard_controller.rb<\/p>\n<p style=\"text-align: justify;\">before_filter: requiere_autenticaci\u00f3n k<\/p>\n<p style=\"text-align: justify;\">vista para panel\/show.html.erb<\/p>\n<p style=\"text-align: justify;\">&lt;h2&gt;Perfil del usuario&lt;\/h2&gt;<\/p>\n<p style=\"text-align: justify;\"><dl><\/p>\n<p style=\"text-align: justify;\"><dt>Nombre de usuario<\/dt><\/p>\n<p style=\"text-align: justify;\"><dd>&lt;%= usuario_actual.perfil.nombre de usuario %&gt;<\/dd><\/p>\n<p style=\"text-align: justify;\"><dt>Nombre<\/dt><\/p>\n<p style=\"text-align: justify;\"><dd>&lt;%= usuario_actual.perfil.nombre %&gt;<\/dd><\/p>\n<p style=\"text-align: justify;\"><dt>Nombre de pila<\/dt><\/p>\n<p style=\"text-align: justify;\"><dd>&lt;%= usuario_actual.perfil.primer_nombre %&gt;<\/dd><\/p>\n<p style=\"text-align: justify;\"><dt>Segundo nombre<\/dt><\/p>\n<p style=\"text-align: justify;\"><dd>&lt;%= usuario_actual.perfil.segundo_nombre %&gt;<\/dd><\/p>\n<p style=\"text-align: justify;\"><dt>Apellido<\/dt><\/p>\n<p style=\"text-align: justify;\"><dd>&lt;%= usuario_actual.perfil.apellido %&gt;<\/dd><\/p>\n<p style=\"text-align: justify;\"><dt>G\u00e9nero<\/dt><\/p>\n<p style=\"text-align: justify;\"><dd>&lt;%= usuario_actual.perfil.g\u00e9nero %&gt;<\/dd><\/p>\n<p style=\"text-align: justify;\"><dt>Enlace<\/dt><\/p>\n<p style=\"text-align: justify;\"><dd>&lt;%= enlace_al_usuario_actual.perfil.enlace, usuario_actual.perfil.enlace %&gt;<\/dd><\/p>\n<p style=\"text-align: justify;\"><dt>Correo electr\u00f3nico<\/dt><\/p>\n<p style=\"text-align: justify;\"><dd>&lt;%= usuario_actual.perfil.correo electr\u00f3nico %&gt;<\/dd><\/p>\n<p style=\"text-align: justify;\"><dt>Acerca de<\/dt><\/p>\n<p style=\"text-align: justify;\"><dd>&lt;%= perfil.usuario_actual.acerca de %&gt;<\/dd><\/p>\n<p style=\"text-align: justify;\"><dt>Cumplea\u00f1os<\/dt><\/p>\n<p style=\"text-align: justify;\"><dd>&lt;%= usuario_actual.perfil.cumplea\u00f1os %&gt;<\/dd><\/p>\n<p style=\"text-align: justify;\"><dt>Trabajar<\/dt><\/dl><\/p>\n<p style=\"text-align: justify;\">El c\u00f3digo anterior es para mostrar informaci\u00f3n del usuario.<\/p>\n\n<h5 style=\"text-align: justify;\"><strong>5. Finalmente cree el archivo facebook.rb en la configuraci\u00f3n.<\/strong><\/h5>\n<p style=\"text-align: justify;\">desarrollo: &amp; valores predeterminados<\/p>\n<p style=\"text-align: justify;\">client_id: \u201ctu app_id de Facebook\u201d<\/p>\n<p style=\"text-align: justify;\">client_secret: &quot;identificaci\u00f3n secreta de Facebook&quot;<\/p>\n<p style=\"text-align: justify;\">alcance: usuario_acerca de m\u00ed, amigos_acerca de m\u00ed, actividades_usuario, actividades_amigos, cumplea\u00f1os_usuario,<\/p>\n<p style=\"text-align: justify;\">cumplea\u00f1os_amigos, registros_usuario, registros_amigos, historial_educaci\u00f3n_usuario,<\/p>\n<p style=\"text-align: justify;\">historial_educaci\u00f3n_amigos,eventos_usuarios,eventos_amigos,grupos_usuarios,grupos_amigos,<\/p>\n<p style=\"text-align: justify;\">ciudad_origen_usuario,ciudad_origen_amigos,intereses_usuario,intereses_amigos,me gusta_usuario,me gusta_amigos,<\/p>\n<p style=\"text-align: justify;\">ubicaci\u00f3n_usuario,ubicaci\u00f3n_amigos,notas_usuario,notas_amigos,presencia_usuario_en l\u00ednea,<\/p>\n<p style=\"text-align: justify;\">amigos_presencia_en l\u00ednea,etiquetas_video_foto_usuario,etiquetas_video_foto_amigos,fotos_usuario<\/p>\n<p style=\"text-align: justify;\">prueba:<\/p>\n<p style=\"text-align: justify;\">&lt;&lt;: *valores predeterminados<\/p>\n<p style=\"text-align: justify;\">producci\u00f3n:<\/p>\n<p style=\"text-align: justify;\">&lt;&lt;: *valores predeterminados<\/p>\n<a href=\"\/es\/contactenos\/\">P\u00f3ngase en contacto con nosotros.<\/a>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-7bcee31a elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"7bcee31a\" data-element_type=\"section\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-1bc09471\" data-id=\"1bc09471\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-14116d08 elementor-widget elementor-widget-heading\" data-id=\"14116d08\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Suscr\u00edbete para recibir las \u00faltimas actualizaciones<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-791fbfbd elementor-widget elementor-widget-shortcode\" data-id=\"791fbfbd\" data-element_type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\">\t\t\t\t\t<script type=\"text\/javascript\">\n\t\t\t\t\t\tvar gCaptchaSibWidget;\n                        var onloadSibCallbackInvisible = function () {\n\n                            var element = document.getElementsByClassName('sib-default-btn');\n                            var countInvisible = 0;\n                            var indexArray = [];\n                            jQuery('.sib-default-btn').each(function (index, el) {\n                                if ((jQuery(el).attr('id') == \"invisible\")) {\n                                    indexArray[countInvisible] = index;\n                                    countInvisible++\n                                }\n                            });\n\n                            jQuery('.invi-recaptcha').each(function (index, el) {\n                                grecaptcha.render(element[indexArray[index]], {\n                                    'sitekey': jQuery(el).attr('data-sitekey'),\n                                    'callback': sibVerifyCallback,\n                                });\n                            });\n                        };\n\t\t\t\t\t<\/script>\n\t\t\t\t\t                <script src=\"https:\/\/www.google.com\/recaptcha\/api.js?onload=onloadSibCallbackInvisible&render=explicit\" async defer><\/script>\n\t\t\t\t\n\t\t\t<form id=\"sib_signup_form_1\" method=\"post\" class=\"sib_signup_form\" action=\"\">\n\t\t\t\t<div class=\"sib_loader\" style=\"display:none;\"><img\n\t\t\t\t\t\t\tsrc=\"https:\/\/www.railscarma.com\/wp-includes\/images\/spinner.gif\" alt=\"cargador\"><\/div>\n\t\t\t\t<input type=\"hidden\" name=\"sib_form_action\" value=\"subscribe_form_submit\">\n\t\t\t\t<input type=\"hidden\" name=\"sib_form_id\" value=\"1\">\n                <input type=\"hidden\" name=\"sib_form_alert_notice\" value=\"Please fill out this field\">\n                <input type=\"hidden\" name=\"sib_form_invalid_email_notice\" value=\"Your email address is invalid\">\n                <input type=\"hidden\" name=\"sib_security\" value=\"a6180fbcb4\">\n\t\t\t\t<div class=\"sib_signup_box_inside_1\">\n\t\t\t\t\t<div style=\"\/*display:none*\/\" class=\"sib_msg_disp\">\n\t\t\t\t\t<\/div>\n                                            <div id=\"sib_captcha_invisible\" class=\"invi-recaptcha\" data-sitekey=\"6LdikOAaAAAAAJ6SWrrKVQrtw7TQpQAEnv0HS0G3\"><\/div>\n                    \t\t\t\t\t<p class=\"sib-email-area\">\r\n    <label class=\"sib-email-area\"><\/label>\r\n    <input type=\"email\" class=\"sib-email-area\" name=\"email\" required=\"required\" placeholder=\"Direcci\u00f3n de correo electr\u00f3nico\">\r\n<\/p>\r\n<p class=\"sib-NAME-area\">\r\n    <label class=\"sib-NAME-area\"><\/label>\r\n    <input type=\"text\" class=\"sib-NAME-area\" name=\"NAME\" placeholder=\"Nombre\">\r\n<\/p>\r\n<p>\r\n    <input type=\"submit\" id=\"invisible\" class=\"sib-default-btn\" value=\"Suscribir\">\r\n<\/p>\t\t\t\t<\/div>\n\t\t\t<input type=\"hidden\" name=\"trp-form-language\" value=\"es\"\/><\/form>\n\t\t\t<style>\n\t\t\t\tform#sib_signup_form_1 p.sib-alert-message {\n    padding: 6px 12px;\n    margin-bottom: 20px;\n    border: 1px solid transparent;\n    border-radius: 4px;\n    -webkit-box-sizing: border-box;\n    -moz-box-sizing: border-box;\n    box-sizing: border-box;\n}\nform#sib_signup_form_1 p.sib-alert-message-error {\n    background-color: #f2dede;\n    border-color: #ebccd1;\n    color: #a94442;\n}\nform#sib_signup_form_1 p.sib-alert-message-success {\n    background-color: #dff0d8;\n    border-color: #d6e9c6;\n    color: #3c763d;\n}\nform#sib_signup_form_1 p.sib-alert-message-warning {\n    background-color: #fcf8e3;\n    border-color: #faebcc;\n    color: #8a6d3b;\n}\n\t\t\t<\/style>\n\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t  <div class=\"related-post slider\">\r\n        <div class=\"headline\">Art\u00edculos Relacionados<\/div>\r\n    <div class=\"post-list owl-carousel\">\r\n\r\n            <div class=\"item\">\r\n            <div class=\"thumb post_thumb\">\r\n    <a  title=\"Gema Kaminari\" href=\"https:\/\/www.railscarma.com\/es\/blog\/articulos-tecnicos\/gema-kaminari\/?related_post_from=37277\">\r\n\r\n      <img decoding=\"async\" width=\"800\" height=\"300\" src=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2023\/04\/kaminari-gem.jpg\" class=\"attachment-full size-full wp-post-image\" alt=\"gema kaminari\" srcset=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2023\/04\/kaminari-gem.jpg 800w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2023\/04\/kaminari-gem-300x113.jpg 300w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2023\/04\/kaminari-gem-768x288.jpg 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/>\r\n\r\n    <\/a>\r\n  <\/div>\r\n\r\n  <a class=\"title post_title\"  title=\"Gema Kaminari\" href=\"https:\/\/www.railscarma.com\/es\/blog\/articulos-tecnicos\/gema-kaminari\/?related_post_from=37277\">\r\n        Gema Kaminari  <\/a>\r\n\r\n        <\/div>\r\n              <div class=\"item\">\r\n            <div class=\"thumb post_thumb\">\r\n    <a  title=\"\u00bfPor qu\u00e9 contratar desarrolladores Ruby on Rails en 2026?\" href=\"https:\/\/www.railscarma.com\/es\/blog\/ror\/por-que-contratar-desarrolladores-de-ruby-on-rails\/?related_post_from=30627\">\r\n\r\n      <img decoding=\"async\" width=\"800\" height=\"300\" src=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2019\/01\/why-to-hire-ruby-on-rails-developers-in-2022.jpg\" class=\"attachment-full size-full wp-post-image\" alt=\"por qu\u00e9 contratar desarrolladores de Ruby on Rails en 2022\" srcset=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2019\/01\/why-to-hire-ruby-on-rails-developers-in-2022.jpg 800w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2019\/01\/why-to-hire-ruby-on-rails-developers-in-2022-300x113.jpg 300w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2019\/01\/why-to-hire-ruby-on-rails-developers-in-2022-768x288.jpg 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/>\r\n\r\n    <\/a>\r\n  <\/div>\r\n\r\n  <a class=\"title post_title\"  title=\"\u00bfPor qu\u00e9 contratar desarrolladores Ruby on Rails en 2026?\" href=\"https:\/\/www.railscarma.com\/es\/blog\/ror\/por-que-contratar-desarrolladores-de-ruby-on-rails\/?related_post_from=30627\">\r\n        \u00bfPor qu\u00e9 contratar desarrolladores Ruby on Rails en 2026?  <\/a>\r\n\r\n        <\/div>\r\n              <div class=\"item\">\r\n            <div class=\"thumb post_thumb\">\r\n    <a  title=\"Importancia de la arquitectura de software en el desarrollo de software empresarial\" href=\"https:\/\/www.railscarma.com\/es\/blog\/ror\/importancia-de-la-arquitectura-de-software-en-el-desarrollo-de-software-empresarial\/?related_post_from=36250\">\r\n\r\n      <img decoding=\"async\" width=\"800\" height=\"300\" src=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2022\/06\/Importance-of-Software-Architecture-in-enterprise-software-development.jpg\" class=\"attachment-full size-full wp-post-image\" alt=\"Importancia de la arquitectura de software en el desarrollo de software empresarial\" srcset=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2022\/06\/Importance-of-Software-Architecture-in-enterprise-software-development.jpg 800w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2022\/06\/Importance-of-Software-Architecture-in-enterprise-software-development-300x113.jpg 300w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2022\/06\/Importance-of-Software-Architecture-in-enterprise-software-development-768x288.jpg 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/>\r\n\r\n    <\/a>\r\n  <\/div>\r\n\r\n  <a class=\"title post_title\"  title=\"Importancia de la arquitectura de software en el desarrollo de software empresarial\" href=\"https:\/\/www.railscarma.com\/es\/blog\/ror\/importancia-de-la-arquitectura-de-software-en-el-desarrollo-de-software-empresarial\/?related_post_from=36250\">\r\n        Importancia de la arquitectura de software en el desarrollo de software empresarial  <\/a>\r\n\r\n        <\/div>\r\n              <div class=\"item\">\r\n            <div class=\"thumb post_thumb\">\r\n    <a  title=\"Ruby IDE: los mejores IDE para el desarrollo de Ruby on Rails\" href=\"https:\/\/www.railscarma.com\/es\/blog\/ror\/ruby-ide-las-mejores-ideas-para-el-desarrollo-de-ruby-on-rails\/?related_post_from=36125\">\r\n\r\n      <img decoding=\"async\" width=\"800\" height=\"300\" src=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2022\/01\/BEST-IDES-FOR-RUBY-ON-RAILS-DEVELOPMENT.jpg\" class=\"attachment-full size-full wp-post-image\" alt=\"MEJORES IDES PARA EL DESARROLLO DE RUBY ON RAILS\" srcset=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2022\/01\/BEST-IDES-FOR-RUBY-ON-RAILS-DEVELOPMENT.jpg 800w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2022\/01\/BEST-IDES-FOR-RUBY-ON-RAILS-DEVELOPMENT-300x113.jpg 300w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2022\/01\/BEST-IDES-FOR-RUBY-ON-RAILS-DEVELOPMENT-768x288.jpg 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/>\r\n\r\n    <\/a>\r\n  <\/div>\r\n\r\n  <a class=\"title post_title\"  title=\"Ruby IDE: los mejores IDE para el desarrollo de Ruby on Rails\" href=\"https:\/\/www.railscarma.com\/es\/blog\/ror\/ruby-ide-las-mejores-ideas-para-el-desarrollo-de-ruby-on-rails\/?related_post_from=36125\">\r\n        Ruby IDE: los mejores IDE para el desarrollo de Ruby on Rails  <\/a>\r\n\r\n        <\/div>\r\n      \r\n  <\/div>\r\n\r\n  <script>\r\n      <\/script>\r\n  <style>\r\n    .related-post {}\r\n\r\n    .related-post .post-list {\r\n      text-align: left;\r\n          }\r\n\r\n    .related-post .post-list .item {\r\n      margin: 10px;\r\n      padding: 10px;\r\n          }\r\n\r\n    .related-post .headline {\r\n      font-size: 14px !important;\r\n      color: #999999 !important;\r\n          }\r\n\r\n    .related-post .post-list .item .post_thumb {\r\n      max-height: 220px;\r\n      margin: 10px 0px;\r\n      padding: 0px;\r\n      display: block;\r\n          }\r\n\r\n    .related-post .post-list .item .post_title {\r\n      font-size: 14px;\r\n      color: #000000;\r\n      margin: 10px 0px;\r\n      padding: 0px;\r\n      display: block;\r\n      text-decoration: none;\r\n          }\r\n\r\n    .related-post .post-list .item .post_excerpt {\r\n      font-size: 12px;\r\n      color: #3f3f3f;\r\n      margin: 10px 0px;\r\n      padding: 0px;\r\n      display: block;\r\n      text-decoration: none;\r\n          }\r\n\r\n    .related-post .owl-dots .owl-dot {\r\n          }\r\n\r\n      <\/style>\r\n      <script>\r\n      jQuery(document).ready(function($) {\r\n        $(\".related-post .post-list\").owlCarousel({\r\n          items: 2,\r\n          responsiveClass: true,\r\n          responsive: {\r\n            0: {\r\n              items: 1,\r\n            },\r\n            768: {\r\n              items: 2,\r\n            },\r\n            1200: {\r\n              items: 2,\r\n            }\r\n          },\r\n                      rewind: true,\r\n                                loop: true,\r\n                                center: false,\r\n                                autoplay: true,\r\n            autoplayHoverPause: true,\r\n                                nav: true,\r\n            navSpeed: 1000,\r\n            navText: ['<i class=\"fas fa-chevron-left\"><\/i>', '<i class=\"fas fa-chevron-right\"><\/i>'],\r\n                                dots: false,\r\n            dotsSpeed: 1200,\r\n                                                    rtl: false,\r\n          \r\n        });\r\n      });\r\n    <\/script>\r\n  <\/div>","protected":false},"excerpt":{"rendered":"<p>Con la Graph API de Facebook y la creaci\u00f3n del protocolo Open Graph, ahora es m\u00e1s f\u00e1cil que nunca leer y escribir datos desde facebook a la aplicaci\u00f3n rails y de vuelta al \u201cgr\u00e1fico social\u201d. He aqu\u00ed algunas de las posibilidades: Podr\u00edas convertir tu p\u00e1gina web en una p\u00e1gina con todas las funciones de Facebook, como si ...<\/p>\n<p class=\"read-more\"> <a class=\"\" href=\"https:\/\/www.railscarma.com\/es\/blog\/how-to-build-a-scalable-saas-platform-using-ruby-on-rails\/\"> <span class=\"screen-reader-text\">C\u00f3mo crear una plataforma SaaS escalable con Ruby on Rails<\/span> Leer m\u00e1s \u00bb<\/a><\/p>","protected":false},"author":1,"featured_media":32189,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[385,384],"tags":[484,485,379,486],"class_list":["post-6455","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-management","category-technical-articles","tag-application-development","tag-facebook","tag-rails-application","tag-ruby-on-rails-application-development"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.8 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>How to get user information from Facebook to Rails application? - RailsCarma Blog<\/title>\n<meta name=\"description\" content=\"With Facebook\u2019s Open Graph protocol, it is now easier then ever to read and write data from facebook to rails application and back to the \u201csocial graph\u201d.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.railscarma.com\/es\/blog\/articulos-tecnicos\/como-obtener-informacion-del-usuario-de-facebook-a-la-aplicacion-rails\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to get user information from Facebook to Rails application? - RailsCarma Blog\" \/>\n<meta property=\"og:description\" content=\"With Facebook\u2019s Open Graph protocol, it is now easier then ever to read and write data from facebook to rails application and back to the \u201csocial graph\u201d.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.railscarma.com\/es\/blog\/articulos-tecnicos\/como-obtener-informacion-del-usuario-de-facebook-a-la-aplicacion-rails\/\" \/>\n<meta property=\"og:site_name\" content=\"RailsCarma - Ruby on Rails Development Company specializing in Offshore Development\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/RailsCarma\/\" \/>\n<meta property=\"article:published_time\" content=\"2013-02-12T01:30:04+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-06-07T08:00:44+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2013\/02\/16562_1_other_wallpapers_hal_9000.jpeg\" \/>\n\t<meta property=\"og:image:width\" content=\"650\" \/>\n\t<meta property=\"og:image:height\" content=\"459\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"admin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@railscarma\" \/>\n<meta name=\"twitter:site\" content=\"@railscarma\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/como-obtener-informacion-del-usuario-de-facebook-a-la-aplicacion-rails\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/como-obtener-informacion-del-usuario-de-facebook-a-la-aplicacion-rails\/\"},\"author\":{\"name\":\"admin\",\"@id\":\"https:\/\/www.railscarma.com\/#\/schema\/person\/5f2228a2dec7549056e709de6eb85d21\"},\"headline\":\"How To Get User Information From Facebook To Rails Application?\",\"datePublished\":\"2013-02-12T01:30:04+00:00\",\"dateModified\":\"2021-06-07T08:00:44+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/como-obtener-informacion-del-usuario-de-facebook-a-la-aplicacion-rails\/\"},\"wordCount\":1230,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.railscarma.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/como-obtener-informacion-del-usuario-de-facebook-a-la-aplicacion-rails\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2013\/02\/16562_1_other_wallpapers_hal_9000.jpeg\",\"keywords\":[\"application development\",\"facebook\",\"rails application\",\"ruby on rails application development\"],\"articleSection\":[\"Articles on Management\",\"Technical Articles\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/como-obtener-informacion-del-usuario-de-facebook-a-la-aplicacion-rails\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/como-obtener-informacion-del-usuario-de-facebook-a-la-aplicacion-rails\/\",\"url\":\"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/como-obtener-informacion-del-usuario-de-facebook-a-la-aplicacion-rails\/\",\"name\":\"How to get user information from Facebook to Rails application? - RailsCarma Blog\",\"isPartOf\":{\"@id\":\"https:\/\/www.railscarma.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/como-obtener-informacion-del-usuario-de-facebook-a-la-aplicacion-rails\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/como-obtener-informacion-del-usuario-de-facebook-a-la-aplicacion-rails\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2013\/02\/16562_1_other_wallpapers_hal_9000.jpeg\",\"datePublished\":\"2013-02-12T01:30:04+00:00\",\"dateModified\":\"2021-06-07T08:00:44+00:00\",\"description\":\"With Facebook\u2019s Open Graph protocol, it is now easier then ever to read and write data from facebook to rails application and back to the \u201csocial graph\u201d.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/como-obtener-informacion-del-usuario-de-facebook-a-la-aplicacion-rails\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/como-obtener-informacion-del-usuario-de-facebook-a-la-aplicacion-rails\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/como-obtener-informacion-del-usuario-de-facebook-a-la-aplicacion-rails\/#primaryimage\",\"url\":\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2013\/02\/16562_1_other_wallpapers_hal_9000.jpeg\",\"contentUrl\":\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2013\/02\/16562_1_other_wallpapers_hal_9000.jpeg\",\"width\":650,\"height\":459},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/como-obtener-informacion-del-usuario-de-facebook-a-la-aplicacion-rails\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.railscarma.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How To Get User Information From Facebook To Rails Application?\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.railscarma.com\/#website\",\"url\":\"https:\/\/www.railscarma.com\/\",\"name\":\"RailsCarma - Ruby on Rails Development Company specializing in Offshore Development\",\"description\":\"RailsCarma is a Ruby on Rails Development Company in Bangalore. We specialize in Offshore Ruby on Rails Development based out in USA and India. Hire experienced Ruby on Rails developers for the ultimate Web Experience.\",\"publisher\":{\"@id\":\"https:\/\/www.railscarma.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.railscarma.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.railscarma.com\/#organization\",\"name\":\"RailsCarma\",\"url\":\"https:\/\/www.railscarma.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.railscarma.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2020\/08\/railscarma_logo.png\",\"contentUrl\":\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2020\/08\/railscarma_logo.png\",\"width\":200,\"height\":46,\"caption\":\"RailsCarma\"},\"image\":{\"@id\":\"https:\/\/www.railscarma.com\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/RailsCarma\/\",\"https:\/\/x.com\/railscarma\",\"https:\/\/www.linkedin.com\/company\/railscarma\/\",\"https:\/\/myspace.com\/railscarma\",\"https:\/\/in.pinterest.com\/railscarma\/\",\"https:\/\/www.youtube.com\/channel\/UCx3Wil-aAnDARuatTEyMdpg\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.railscarma.com\/#\/schema\/person\/5f2228a2dec7549056e709de6eb85d21\",\"name\":\"admin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.railscarma.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/308867ca6c81f3aba146080c601000087180326f752c4116849ea9f514c6a4fa?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/308867ca6c81f3aba146080c601000087180326f752c4116849ea9f514c6a4fa?s=96&d=mm&r=g\",\"caption\":\"admin\"},\"sameAs\":[\"https:\/\/www.railscarma.com\/hire-ruby-on-rails-developer\/\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"\u00bfC\u00f3mo obtener informaci\u00f3n del usuario de Facebook a la aplicaci\u00f3n Rails? -Blog de RailsCarma","description":"Con el protocolo Open Graph de Facebook, ahora es m\u00e1s f\u00e1cil que nunca leer y escribir datos desde Facebook en la aplicaci\u00f3n Rails y volver al &quot;gr\u00e1fico social&quot;.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.railscarma.com\/es\/blog\/articulos-tecnicos\/como-obtener-informacion-del-usuario-de-facebook-a-la-aplicacion-rails\/","og_locale":"es_ES","og_type":"article","og_title":"How to get user information from Facebook to Rails application? - RailsCarma Blog","og_description":"With Facebook\u2019s Open Graph protocol, it is now easier then ever to read and write data from facebook to rails application and back to the \u201csocial graph\u201d.","og_url":"https:\/\/www.railscarma.com\/es\/blog\/articulos-tecnicos\/como-obtener-informacion-del-usuario-de-facebook-a-la-aplicacion-rails\/","og_site_name":"RailsCarma - Ruby on Rails Development Company specializing in Offshore Development","article_publisher":"https:\/\/www.facebook.com\/RailsCarma\/","article_published_time":"2013-02-12T01:30:04+00:00","article_modified_time":"2021-06-07T08:00:44+00:00","og_image":[{"width":650,"height":459,"url":"https:\/\/www.railscarma.com\/wp-content\/uploads\/2013\/02\/16562_1_other_wallpapers_hal_9000.jpeg","type":"image\/jpeg"}],"author":"admin","twitter_card":"summary_large_image","twitter_creator":"@railscarma","twitter_site":"@railscarma","twitter_misc":{"Escrito por":"admin","Tiempo de lectura":"6 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/como-obtener-informacion-del-usuario-de-facebook-a-la-aplicacion-rails\/#article","isPartOf":{"@id":"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/como-obtener-informacion-del-usuario-de-facebook-a-la-aplicacion-rails\/"},"author":{"name":"admin","@id":"https:\/\/www.railscarma.com\/#\/schema\/person\/5f2228a2dec7549056e709de6eb85d21"},"headline":"How To Get User Information From Facebook To Rails Application?","datePublished":"2013-02-12T01:30:04+00:00","dateModified":"2021-06-07T08:00:44+00:00","mainEntityOfPage":{"@id":"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/como-obtener-informacion-del-usuario-de-facebook-a-la-aplicacion-rails\/"},"wordCount":1230,"commentCount":0,"publisher":{"@id":"https:\/\/www.railscarma.com\/#organization"},"image":{"@id":"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/como-obtener-informacion-del-usuario-de-facebook-a-la-aplicacion-rails\/#primaryimage"},"thumbnailUrl":"https:\/\/www.railscarma.com\/wp-content\/uploads\/2013\/02\/16562_1_other_wallpapers_hal_9000.jpeg","keywords":["application development","facebook","rails application","ruby on rails application development"],"articleSection":["Articles on Management","Technical Articles"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/como-obtener-informacion-del-usuario-de-facebook-a-la-aplicacion-rails\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/como-obtener-informacion-del-usuario-de-facebook-a-la-aplicacion-rails\/","url":"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/como-obtener-informacion-del-usuario-de-facebook-a-la-aplicacion-rails\/","name":"\u00bfC\u00f3mo obtener informaci\u00f3n del usuario de Facebook a la aplicaci\u00f3n Rails? -Blog de RailsCarma","isPartOf":{"@id":"https:\/\/www.railscarma.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/como-obtener-informacion-del-usuario-de-facebook-a-la-aplicacion-rails\/#primaryimage"},"image":{"@id":"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/como-obtener-informacion-del-usuario-de-facebook-a-la-aplicacion-rails\/#primaryimage"},"thumbnailUrl":"https:\/\/www.railscarma.com\/wp-content\/uploads\/2013\/02\/16562_1_other_wallpapers_hal_9000.jpeg","datePublished":"2013-02-12T01:30:04+00:00","dateModified":"2021-06-07T08:00:44+00:00","description":"Con el protocolo Open Graph de Facebook, ahora es m\u00e1s f\u00e1cil que nunca leer y escribir datos desde Facebook en la aplicaci\u00f3n Rails y volver al &quot;gr\u00e1fico social&quot;.","breadcrumb":{"@id":"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/como-obtener-informacion-del-usuario-de-facebook-a-la-aplicacion-rails\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/como-obtener-informacion-del-usuario-de-facebook-a-la-aplicacion-rails\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/como-obtener-informacion-del-usuario-de-facebook-a-la-aplicacion-rails\/#primaryimage","url":"https:\/\/www.railscarma.com\/wp-content\/uploads\/2013\/02\/16562_1_other_wallpapers_hal_9000.jpeg","contentUrl":"https:\/\/www.railscarma.com\/wp-content\/uploads\/2013\/02\/16562_1_other_wallpapers_hal_9000.jpeg","width":650,"height":459},{"@type":"BreadcrumbList","@id":"https:\/\/www.railscarma.com\/es\/blog\/technical-articles\/como-obtener-informacion-del-usuario-de-facebook-a-la-aplicacion-rails\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.railscarma.com\/"},{"@type":"ListItem","position":2,"name":"How To Get User Information From Facebook To Rails Application?"}]},{"@type":"WebSite","@id":"https:\/\/www.railscarma.com\/#website","url":"https:\/\/www.railscarma.com\/","name":"RailsCarma - Empresa de desarrollo Ruby on Rails especializada en desarrollo offshore","description":"RailsCarma es una empresa de desarrollo de Ruby on Rails en Bangalore. Nos especializamos en el desarrollo offshore de Ruby on Rails con sede en EE. UU. e India. Contrate desarrolladores experimentados de Ruby on Rails para disfrutar de la mejor experiencia web.","publisher":{"@id":"https:\/\/www.railscarma.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.railscarma.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Organization","@id":"https:\/\/www.railscarma.com\/#organization","name":"RielesCarma","url":"https:\/\/www.railscarma.com\/","logo":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.railscarma.com\/#\/schema\/logo\/image\/","url":"https:\/\/www.railscarma.com\/wp-content\/uploads\/2020\/08\/railscarma_logo.png","contentUrl":"https:\/\/www.railscarma.com\/wp-content\/uploads\/2020\/08\/railscarma_logo.png","width":200,"height":46,"caption":"RailsCarma"},"image":{"@id":"https:\/\/www.railscarma.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/RailsCarma\/","https:\/\/x.com\/railscarma","https:\/\/www.linkedin.com\/company\/railscarma\/","https:\/\/myspace.com\/railscarma","https:\/\/in.pinterest.com\/railscarma\/","https:\/\/www.youtube.com\/channel\/UCx3Wil-aAnDARuatTEyMdpg"]},{"@type":"Person","@id":"https:\/\/www.railscarma.com\/#\/schema\/person\/5f2228a2dec7549056e709de6eb85d21","name":"administraci\u00f3n","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.railscarma.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/308867ca6c81f3aba146080c601000087180326f752c4116849ea9f514c6a4fa?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/308867ca6c81f3aba146080c601000087180326f752c4116849ea9f514c6a4fa?s=96&d=mm&r=g","caption":"admin"},"sameAs":["https:\/\/www.railscarma.com\/hire-ruby-on-rails-developer\/"]}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/www.railscarma.com\/es\/wp-json\/wp\/v2\/posts\/6455","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.railscarma.com\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.railscarma.com\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.railscarma.com\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.railscarma.com\/es\/wp-json\/wp\/v2\/comments?post=6455"}],"version-history":[{"count":0,"href":"https:\/\/www.railscarma.com\/es\/wp-json\/wp\/v2\/posts\/6455\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.railscarma.com\/es\/wp-json\/wp\/v2\/media\/32189"}],"wp:attachment":[{"href":"https:\/\/www.railscarma.com\/es\/wp-json\/wp\/v2\/media?parent=6455"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.railscarma.com\/es\/wp-json\/wp\/v2\/categories?post=6455"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.railscarma.com\/es\/wp-json\/wp\/v2\/tags?post=6455"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}