0

我在向链接连接发送消息时遇到了一个问题。我使用了两个 API,https://api.linkedin.com/v1/people/更新配置文件和https://api.linkedin.com/v1/people/~/mailbox向连接发送消息。

更新配置文件对我来说很好,我什至得到了一个 1 级连接。但是在向连接发送消息时会出现问题。

下面是我用来发送消息的 XML 代码。

$xmlPostData = '<?xml version="1.0" encoding="UTF-8"?>

    <mailbox-item>
        <recipients>
            <recipient>
                <person path="/people/'.$iMemberId.'" />
            </recipient>
        </recipients>
        <subject>Invitation to Connect</subject>
        <body>Please Join On Eduroadmap</body>
        <item-content>
            <invitation-request>
                <connect-type>friend</connect-type>
                <authorization>
                    <name>'.$sAuthName.'</name>
                    <value>'.$sAuthValue.'</value>
                </authorization>
            </invitation-request>
        </item-content>
    </mailbox-item>';

在上面的代码中,$iMemberId、$sAuthName、$sAuthValue 是我从https://api.linkedin.com/v1/people/~/connections api 检索到的连接详细信息。

下面是我用来发布上述 XML 的 curl。

$ch = curl_init();
curl_setopt($ch,CURLOPT_URL,$sUrl);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: text/xml'));
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS,$xmlPostData);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

在上面的代码中, $sUrl 是 => https://api.linkedin.com/v1/people/~/mailbox?oauth2_access_token=,我附加了一个正确的访问令牌。

我错过了什么?我已经尝试了很多,但我一无所获。

4

1 回答 1

0

请访问http://developer.linkedin.com/thread/3255。无论如何,你从哪里得到 $sAuthName 和 $sAuthValue?它是从https://api.linkedin.com/v1/people/~/connections ** API和使用 (api-standard-profile-request) 获得的。要求?

这些是步骤:

示例:API 调用必须是我的 api-standard-profile 请求。

  1. http://api.linkedin.com/v1/people/id=abcdj32 :(名字,姓氏,api-standard-profile-request)
  2. 从上述 API 调用的生成响应中获取您需要的$sAuthName$sAuthValue 。您可以从 <api-standard-profile-request> 中的value标签中获取它,它会是这样的:<value>name:6hhdh6</value>
  3. 根据您的需要,$sAuthName = name & $sAuthValue =6hhdh6
  4. $iMemberId 不应是 XML 响应中的 id 数据
  5. 范围应启用“w_messages”
  6. XML 数据应该适合这些

试试这些。

于 2013-10-04T07:44:10.367 回答