我正在为LinkedIn API编写一个类包装器,我正在使用Zend Framework 1.11.2。这是我的一个片段:
$config = Pb_Portal::getInstance()->getConfig('linkedin.ini');
$body = '<?xml version="1.0" encoding="UTF-8"?>';
$body .= '<share>';
$body .= '<comment>83% of employers will use social media to hire: 78% LinkedIn, 55% Facebook, 45% Twitter [SF Biz Times] http://bit.ly/cCpeOD</comment>';
$body .= '<content>';
$body .= '<title>Survey: Social networks top hiring tool - San Francisco Business Times</title>';
$body .= '<submitted-url>http://sanfrancisco.bizjournals.com/sanfrancisco/stories/2010/06/28/daily34.html</submitted-url>';
$body .= '<submitted-image-url>http://images.bizjournals.com/travel/cityscapes/thumbs/sm_sanfrancisco.jpg</submitted-image-url>';
$body .= '</content>';
$body .= '<visibility>';
$body .= '<code>anyone</code>';
$body .= '</visibility>';
$body .= '</share>';
$client = Zend_Oauth::getHttpClient();
$client->setUri('http://api.linkedin.com/v1/people/~/shares');
$client->setMethod(Zend_Http_Client::POST);
$client->setRawData($body,'text/xml');
$client->setHeaders('Content-Type', 'text/xml');
$client->setParameterPost('oauth_consumer_key', $config->appKey);
$client->setParameterPost('oauth_nonce', $config->appSecretKey);
$client->setParameterPost('oauth_token', $acc->getToken());
$client->setParameterPost('oauth_timestamp', time());
$client->setParameterPost('oauth_signature_method', 'HMAC-SHA1');
$client->setParameterPost('oauth_version', '1.0');
$response = $client->request();
$xml = @simplexml_load_string($response->getBody());
我有这个回应:
SimpleXMLElement Object
(
[status] => 401
[timestamp] => 1299581073233
[error-code] => 0
[message] => Unknown authentication scheme
)
有人能帮助我吗?哪里出错?
答案 0 :(得分:0)
我有类似的问题(虽然我只是检索用户信息)。这个链接帮了很大忙。您可以允许令牌从您的选项构造http客户端,而不是将params构造为get变量。
http://www.contentwithstyle.co.uk/content/linkedin-and-zendoauth/
答案 1 :(得分:0)