使用元标记og:图像在Linkedin中共享动态变化的图像不起作用

时间:2015-04-08 13:30:18

标签: linkedin

以下是我们的要求: 在Linked IN(URL,标题,摘要和图像)中共享动态变化的页面内容。 问题陈述: 1.除了Image之外的所有其他内容都在Linked IN中共享 方法1:使用链接的共享URL

<a target="_blank" href="http://www.linkedin.com/shareArticle?mini=true&url=<<OUR URL>>&title=<<Our TITLE>>&summary=<<OUR SUMMARY>>">Share</a>

问题: 1.上面的URL没有传递图像的参数,如标题,摘要等。它是从元标记内容中获取图像,该元素在页面中具有“og:image”属性

<meta property="og:image" content="<<IMAGE URL>>">enter code here

由于图像在页面中动态更改,我们尝试使用jQuery动态更改此元标记的内容。但是当打开新的共享窗口时,它会尝试获取元标记中可用的默认图像,而不是使用jQuery获取的图像。

方法2:使用AJAX发布提交动作

function shareOnLinkedInTest() {
    var dataJson= {"share": {
            "comment": "Posting from the API using XML",
            "content": {
                "title": "A title for your share",
                "submitted-url": "http://developer.linkedin.com",
                "submitted-image-url":  
                 "ImageURL",
            },
            "visibility": { "code": "anyone" }
        }};


$.ajax({
    type: 'POST',
        crossDomain : true,
    contentType: "application/json",
        dataType:"jsonp",
        jsonp: 'jsonp-callback',
        url: "https://api.linkedin.com/v1/people/~/shares?format=json",
        data:dataJson,
        success: function(data) {
        alert("it works>>>>>>>>>>>>>>"+data);
    },
        error : function (xhr, ajaxOptions, thrownError){  
            alert("error");
            console.log(xhr);          
        console.log(thrownError);
        } 
    }); }

问题: 由于在共享内容时无法在上述脚本中输入用户凭据,因此会抛出401 -Unauthorized异常

在浏览各种参考网站时已经观察到,在共享内容时,Linked In存在缓存问题。

https://www.wix.com/support/html5/ugc/e828aa26-d50b-4e5a-a982-ff563ca7e3dd/061f3e24-55e1-418d-ab65-9d6b0457b863 Getting old image while sharing page in LinkedIn

任何人都可以帮忙吗????

先谢谢, 萨里萨

1 个答案:

答案 0 :(得分:0)

LinkedIn的抓取工具不会执行页内Javascript,因此如果您依靠客户端代码来设置元标记的值,那么当LinkedIn抓取页面进行共享时,它将不会被提取。该值必须静态呈现到页面中(如果它必须是动态值,则必须在后端选择并呈现到页面中。)

关于您的第二种方法,您必须在尝试发布共享之前对用户进行身份验证,这就是您在尝试时收到401 Unauthorized错误的原因。有关在https://developer.linkedin.com/docs/rest-api

上提供经过身份验证的REST API调用的更多信息