Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

454
Vistas
Is there a way to programmatically check if a user shared a link on Facebook?

I'm currently using jQuery to record each click on a Facebook share link on my site, but I'm looking for a more accurate solution. Instead of recording the clicks, I'd like to record the actual "shares". Is there a way to get a response message back from Facebook after the user shares a link?

over 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

I came across this today: http://graph.facebook.com/http://stackoverflow.com

It returns a total share count for a specified URL. I have unique URLs for each user in my application so I can track their shares easily by using this.

It also works for twitter: http://urls.api.twitter.com/1/urls/count.json?url=http://stackoverflow.com

over 4 years ago · Santiago Trujillo Denunciar

0

For as long as it remains active, you can use the Facebook "Feed" dialog rather than the "Share" dialog to ALWAYS get a share confirmation. (This applies to the Javascript Facebook SDK.)

Here's my understanding of the differences between the two:


Share Method

FB.ui({
    method: 'share',
    href: 'http://stackoverflow.com/questions/5363517',
}, function(response){
   console.log(response)
});

If the user is LOGGED IN and authorized your app:

  • If the post was shared, you will get a post id in the response variable: {post_id: "10205041067000110_10205045578512895"}.
  • If the post was not shared, response will be null.

If the user is NOT LOGGED IN to your app (they still need to be logged into Facebook):

  • The response variable will be null regardless of whether the user shared or did not share.

Thus, if you absolutely need the share confirmation, you have to ask the user to login first. This may not be a problem for your app, but in my case this added unnecessary friction to the sharing process.


Feed Method

(Deprecated but still active)

FB.ui({
  method: 'feed',
  link: 'http://stackoverflow.com/questions/5363517',
  caption: 'Test Caption',
}, function(response){
    console.log(response)
});

IRRESPECTIVE of login status (w.r.t. your app; they still need to be logged into Facebook):

  • If a post was actually shared, the response variable returned by Facebook will have the post id: {post_id: "10205041067000110_10205045578512895"}.
  • If the post was not shared, response will be null.

Using this method, you will always be able to tell whether someone posted or not, regardless of their login status.

over 4 years ago · Santiago Trujillo Denunciar

0

Here's what I do....Create the share using normal anchor that calls this javascript function (spacing or brackets or something might be off):

FB.ui(
        {

            display:'iframe',
            method: 'stream.publish',
            caption: 'Put something here',
            description: 'put something here',
            name: 'foo',
            link: 'http://www.foo.com',
            picture: 'http://fo.com/img.gif'

        },
        function (response) {
            if (response && response.post_id) {
            //this means the post was completed....response.post_id is the FB post ID

            $.ajax({
                var URL = '/pages/ajax_InsertUserFacebookPost.aspx?';
                URL += 'facebookpostid=' + response.post_id;
                    type: "GET",
                    url: URL,
                    data: "{}",
                    contentType: "application/json; charset=utf-8",
                    dataType: "json",
                    async: true
                });


            } else {
                //alert('Post was not published.');
            }
        }
        );
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda