PDA

View Full Version : سوال: ارسال پست به linkedin با php , api



kowarda
سه شنبه 17 مرداد 1396, 21:30 عصر
سلام دوستان :
میخواستم با api بصورت اتوماتیک به لینک دین مطلب ارسال کنم داکیومنت خود لینک دین خوندم اما بصورت واضح توضیح نداده مثال های هم که تو اینترنت هست هم که جوای نمیده من از نمونه کد زیر استفاده کردم اما خطا میده از دوستان کسی هست که تا حالا این کار رو کرده باشه ؟

<?php

require_once("OAuth.php");

$data = array(
'consumer_key' => '86dizh84t9t2i0',
'consumer_secret' => 'HSjrxnAyjiMiqo0u',
'callback_url' =>"https://dev.mandegarweb.com/moradi/option/savelinkedin"
);
$access_token="acecc toke n";
$method = new OAuthSignatureMethod_HMAC_SHA1();
$consumer = new OAuthConsumer($data['consumer_key'], $data['consumer_secret']);

$access_token = $access_token; // as we got from last tutorial <a href="http://www.tricksofit.com/2015/09/get-user-access-token-for-linkedin" target="_blank"><strong>get user Access Token for LinkedIn</strong></a>

$title = "Auto Post on Liguhjiklh";
$targetUrl = "http://dev.mandegarweb.com/moradi/link/";
$imgUrl = "http://dev.mandegarweb.com/moradi/link/";
$description= "dcfvgbhjnkml'";

$shareUrl = "https://api.linkedin.com/v2/people/~/shares?oauth2_access_token=$access_token&format=xml";
$xml = "<share>";
$xml .= "<content>
<title>$title</title>
<description>$description</description>";
if(!empty($targetUrl)){
$xml .= "<submitted-url>$targetUrl</submitted-url>";
}

if(!empty($imgUrl)){
$xml .= "<submitted-image-url>$imgUrl</submitted-image-url>";
}
$xml .= "</content>
<visibility>
<code>anyone</code>
</visibility>
</share>";

$request = OAuthRequest::from_consumer_and_token($consumer, $access_token, "POST", $shareUrl);
$request->sign_request($method, $consumer, $access_token);
$auth_header = $request->to_header("https://api.linkedin.com");

$response = httpRequest($shareUrl, $auth_header, "POST", $xml);
var_dump($response);
function httpRequest($url, $auth_header, $method, $body = NULL) {
if (!$method) {
$method = "GET";
}

$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_HEADER, 0);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_HTTPHEADER, array($auth_header)); // Set the headers.

if ($body) {
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $body);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, $method);
curl_setopt($curl, CURLOPT_HTTPHEADER, array($auth_header, "Content-Type: text/xml;charset=utf-8"));
}

$data = curl_exec($curl);
curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
return $data;
}
?>







خطای که برمیگردونه :
{
"serviceErrorCode": 0,
"message": "Resource people does not exist",
"status": 404
}