无法使用 LinkedIn API v. 2 在 LinkedIn 上共享

PAL*_*AEL 5 linkedin-api

我在 LinkedIn 上分享时遇到困难。我试图通过 LinkedIn API V2 发布 LinkedIn 共享,每次发出发布请求时,我都会从服务器收到请求超时(状态 504)答案。这是我的代码:

myPost = {
      'author': 'urn:li:person:' + this.uid,
      'lifecycleState': 'PUBLISHED',
      'specificContent': {
          'com.linkedin.ugc.ShareContent': {
              'shareCommentary': {
                  'text': 'Hello World! This is my first Share on LinkedIn!'
              },
              'shareMediaCategory': 'NONE'
          }
      },
      'visibility': {
          'com.linkedin.ugc.MemberNetworkVisibility': 'PUBLIC'
      }
  }

header = {
  'Content-Type': 'application/json',
  'X-Restli-Protocol-Version': '2.0.0',
  'Authorization': 'Bearer ' + token
};

this.http.post('https://api.linkedin.com/v2/ugcPosts', myPost, header).then(res => {
    alert(JSON.stringify(res));
  })
  .catch(err => {
    alert(JSON.stringify(err));
  });
Run Code Online (Sandbox Code Playgroud)

这是错误消息:

{
    "message": "Request timed out",
    "status": 504
}
Run Code Online (Sandbox Code Playgroud)

这是一个 Angular-ionic 项目,我使用本机 cordova-plugin-advanced-http 来发出我的发布请求。我可以毫无问题地登录 LinkedIn、获取访问令牌并使用相同的本机插件和 LinkedIn API V2 从 LinkedIn 检索数据。

在我的 LinkedIn 开发者帐户的使用和限制页面上,我可以看到创建方法的 API 调用。

Dav*_*eus 5

如果 LinkedIn 无法解析请求正文,则可能会发生与 LinkedIn API v2 中的 POST 端点相关的超时。此处发布的示例的解决方案是将其转换myPost为正确的 JSON 字符串,例如:json.dumps(myPost)

'Content-Type': 'application/json'如果在使用 ruby​​ 玩他们的 API 时丢失了头,那么超时也会发生。


小智 0

帮助我解决了 python 上的同样问题

head = {
'Authorization': 'Bearer '+token, 'X-Restli-Protocol-Version': '2.0.0'
}

body = {
    "author": 'urn:li:person:'+ID,
    "lifecycleState": "PUBLISHED",
    "specificContent": {
        "com.linkedin.ugc.ShareContent": {
            "shareCommentary": {
                "text": "Hello World! This is my first Share on LinkedIn!"
            },
            "shareMediaCategory": "NONE"
        }
    },
    "visibility": {
        "com.linkedin.ugc.MemberNetworkVisibility": "PUBLIC"
    }
}

requests.post('https://api.linkedin.com/v2/ugcPosts', data=json.dumps(body),headers=head)
Run Code Online (Sandbox Code Playgroud)