Как подключиться к бирже 2013 EWS просто получить фото?
Какая библиотека мне нужна (API) и как ее встроить? (Я начинающий в php)
Вот код, который я сейчас имею:
https://exchange.domen.local/ews/exchange.asmx/s/GetUserPhoto?email=mail@mail.ru&size=HR240x240
Он спрашивает меня логин / пароль. Это хорошо. Но мне нужен способ написать логин / пароль к скрипту. Благодарю.
Вот как я справился с этим в PHP, используя curl. Это просто без каких-либо зависимостей вне curl.
Проверено на сервере Exchange 2013. Сохраняет в файл напрямую.
$server = ''; // owa.whatever.com, etc.
$user = ''; // username without domain info
$password = '';
$email_to_get = ''; // Email to pull photo
$fullurl = "https://$server/ews/Exchange.asmx/s/GetUserPhoto?email=$email_to_get&size=HR648x648"; //sizes defined at https://msdn.microsoft.com/en-us/library/jj194329(v=exchg.80).aspx
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $fullurl);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_NTLM | CURLAUTH_BASIC);
curl_setopt($ch, CURLOPT_USERPWD, "$user:$password");
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
$returned = curl_exec($ch);
$fp = fopen("pic.jpg", 'w'); // Save picture locally to .jpg
fwrite($fp, $returned);
fclose($fp);
header('Content-type: image/jpeg');
echo $returned; // Display the image on the page if desired
Ваш «Код», который вы предоставляете, является неполным. Вы только запускаете URL, но не указываете, что хотите извлечь изображение из потока XML.
Лучший способ проверить Microsoft HowTo Вот, в нем приведены примеры, которые вы можете приспособить к вашим потребностям. Если вы не можете сделать это, вы можете проверить библиотеку PHP EWS из Вот.