1

我正在尝试使用 OAuth PUT 将 post-id 标记为工作讨论:

$post_id = "G-34343-example";
$cmd = "http://api.linkedin.com/v1/posts/{$post_id}/category/code";
$xml = "<?xml version='1.0' encoding='UTF-8'?><code>job</code>";
$this->oauthc->fetch($cmd, $xml, OAUTH_HTTP_METHOD_PUT, array("Content-Type" => "application/xml"));

但我收到一个错误:

有人知道这是什么意思吗?

com.linkedin.common.leo.core.UnauthorizedActionException: Unauthorized change of forum type
4

3 回答 3

3

问题出在这里:

<?php
$post id = "G-34343-example";
?>

变量名中有一个空格。使用下划线而不是空格来使其工作。

(这:$cmd = "http://api.linkedin.com/v1/posts/{$post_id}/category/code";将包含一个空白点,帖子 ID 应该是。)

于 2013-01-10T13:59:24.267 回答
1

您使用 API 连接的用户是否有权标记目标组中的帖子?您是否尝试过以该用户的身份直接登录 LinkedIn,进入目标论坛并尝试标记帖子?

于 2013-01-10T15:25:42.677 回答
1

创建群组帖子时,它的 URL 在“位置”标头中返回。出于某种原因,位置标头中的 URL 使用的是 http 而不是 https。

如果您使用的是 OAuth2,如果您尝试使用 http 而不是 htttps 访问 API,LinkedIn 会返回 401。因此,如果您收到 401 响应,请检查您是否使用了 https。

所以代码应该是这样的:

$url = $response->headers['location'] . '/category/code';
$url = str_replace('http://', 'https://', $post_url);
// ...
于 2013-09-22T18:06:31.717 回答