@bakhritdinov_b

Реально реализовать задача с curl?

Привет всем, помогите решить задачу
Есть php код:
$curl = curl_init('http://sitename');
curl_setopt($curl, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
curl_setopt($curl, CURLOPT_USERPWD, "Username:Password");
curl_exec($curl);
curl_close($curl);

и на сайте sitename указан параметры на .htaccess

Order deny,allow
Deny from all
AuthType Basic
AuthUserFile /www/.htpasswd
AuthName "Protected Area"
require valid-user
Allow from 127.0.0.1


Каким образом можно проверять на корректность авторизации для условий?
Условия:

Если (авторизация прошла успешно){
<video>
 <source src="http://sitename/filename.mp4">
</video>

}иначе нет
  • Вопрос задан
  • 747 просмотров
Решения вопроса 1
mourr
@mourr
Passionate JS developer
Во-первых, если авторизация прошла неуспешно - вернется 401 Unathorized, можно делать примерно так

$curl = curl_init('http://sitename');
curl_setopt($curl, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
curl_setopt($curl, CURLOPT_USERPWD, "Username:Password");
curl_exec($curl);
$httpCode = curl_getinfo($curl,CURLINFO_HTTP_CODE);
if($httpCode == 401){
  //failed
}else{
 //maybe success?
}
curl_close($curl);


Или, например проверять наличие в ответе вашего паттерна таким образом
$curl = curl_init('http://sitename');
curl_setopt($curl, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
curl_setopt($curl, CURLOPT_USERPWD, "Username:Password");
curl_setopt($curl,CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($curl);
if(!strpos("<video",$response)){
 //fail
}else{
 //success
}
curl_close($curl);
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы