2016-06-06 2 views
1

Я пытаюсь получить изображение профиля пользователя, расположенное в Microsoft Exchange Server [версия 2013].Получить фото пользователя с сервера Exchange с помощью PHP CURL

Я могу видеть картину, используя ниже URL-адрес [Пример]:

https://companydomain.com/owa/service.svc/s/GetPersonaPhoto?email=user1%40companydomain.com&size=HR96x96&sc=1464941029314

Требование:

Чтобы получить все профиль пользователя Общества изображение загружается в папку.

Что я сделал до сих пор?

написал сценарий, используя Php CURL

<?php 
    $user = '[email protected]'; 
    $password = 'XXXXXXX'; 
    $fullurl="https://companydomain.com/owa/service.svc/s/GetPersonaPhoto?email=user1%40companydomain.com&size=HR96x96&sc=1464941029314"; 
    $ch = curl_init(); 
    curl_setopt($ch, CURLOPT_HEADER, 0); 
    curl_setopt($ch, CURLOPT_VERBOSE, 1); 
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); 
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); 
    curl_setopt($ch, CURLOPT_FAILONERROR, 0); 
    curl_setopt($ch, CURLOPT_USERPWD, "$user:$password"); 
    curl_setopt($ch, CURLOPT_URL, $fullurl); 
    $returned = curl_exec($ch); 
    curl_close ($ch); 

Выход: страница, содержащая: Объект переехал сюда. как текст, и когда я щелкнул по ссылке «здесь», он перейдет на страницу входа в Microsoft Outlook.

Пожалуйста, помогите мне получить желаемый комплект и дайте мне знать, что мне не хватает.

Заранее спасибо

+0

Может кто-нибудь пожалуйста, предложите мне об этом? – SamJ

ответ

0

кажется, что вы получите перенаправлены (301 или 302) в URL вы rovided. Я могу предоставить решение, которое предоставляет вам «target» -URL, который должен быть необходимым изображением.

function get_web_page($url) 
{ 
    $options = array( 
     CURLOPT_RETURNTRANSFER => true,  // return web page 
     CURLOPT_HEADER   => true, // return headers 
     CURLOPT_FOLLOWLOCATION => true,  // follow redirects 
     CURLOPT_ENCODING  => "",  // handle all encodings 
     CURLOPT_USERAGENT  => "boss", // who am i 
     CURLOPT_AUTOREFERER => true,  // set referer on redirect 
     CURLOPT_CONNECTTIMEOUT => 120,  // timeout on connect 
     CURLOPT_TIMEOUT  => 120,  // timeout on response 
     CURLOPT_MAXREDIRS  => 10,  // stop after 10 redirects 
    ); 

    $ch  = curl_init($url); 
    curl_setopt_array($ch, $options); 
    $content = curl_exec($ch); 
    $err  = curl_errno($ch); 
    $errmsg = curl_error($ch); 
    $header = curl_getinfo($ch); 
    curl_close($ch); 

    //$header['errno'] = $err; 
    // $header['errmsg'] = $errmsg; 
    //$header['content'] = $content; 
    print($header[0]); 
    return $header; 
} 
$thisurl = "http://www.example.com/redirectfrom"; 
$myUrlInfo = get_web_page($thisurl); 
echo $myUrlInfo["url"]; 

вы должны получить сейчас http://www.example.com/redirectto

Смежные вопросы