8

我将 OAuth 1.0a 用于 LinkedIn API。目前,我已经实现了一些获取配置文件和连接的调用,它们似乎都工作正常。但是对于发送消息,oauth 库会抛出以下异常:

{
  "errorCode": 0,
  "message": "Unknown authentication scheme",
  "requestId": "I2Y0MFJ8ME",
  "status": 401,
  "timestamp": 1378376573339
}

我正在使用 PHP PECL OAuth。我正在像这样初始化 $oauth 对象:

$oauth = new OAuth(API_KEY, API_SECRET, OAUTH_SIG_METHOD_HMACSHA1, OAUTH_AUTH_TYPE_FORM);
$oauth->setToken(ACCESS_TOKEN, SECRET);

并像这样进行其余的调用:

$url = 'https://api.linkedin.com/v1/people/~/mailbox?format=json';
$content_type = array('Content-Type' => 'application/json');
$oauth->fetch($url, $message, OAUTH_HTTP_METHOD_POST, $content_type);

$message 看起来像这样:

$message = Array
(
    [recipients] => Array
        (
            [0] => z2222117O
        )

    [subject] => this is my title
    [body] => this is my body
    [format] => json
    [id] => EAS123123
)

看起来请求没有任何问题。我已按照LinkedIn 消息传递文档中的说明进行操作。其他人有同样的问题吗?提前致谢。

4

3 回答 3

3

我已经在下面的链接上回答了这个问题,似乎是同样的错误。虽然它看起来不同的技术,但是将请求中的 access_token 发送回以获取受保护的资源的解决方案是相同的。

供您参考的链接。 Apache Oltu Linkedin 集成示例

于 2015-04-20T18:47:36.630 回答
1

LinkedIn requires you to either set the access token in the header or as a query param with the non-standard name of oauth2_access_token. When I sent it as a query param with the name access_token, I got the error you did.

于 2017-09-12T19:58:53.083 回答
0

LinkedIn 论坛上的一些问题似乎表明您收到的错误意味着您没有有效的身份验证令牌。

您确定要随消息发送正确且有效的身份验证令牌吗?

于 2013-09-15T00:14:01.930 回答