Nasıl (Ben şifreyi bilmek) şifre öngörülmektedir PHP dinlendirici bir API erişebilirsiniz

5 Cevap php

Yani, örneğin burada URL: https://rexms.net:32005/rexwapi/common/timeframes - Ben doğru kullanıcı adı / şifre girmek benim tarayıcı bu URL'ye giderseniz o bana XML tükürmek olacaktır. Sorun Ben açıkçası kullanıcı adı / şifre girmek için bir istemi alamadım bu yüzden PHP ile bu erişim için ihtiyaç vardır.

Şu kodu:

$timeframes_xml = simplexml_load_file(file_get_contents('https://rexms.net:32005/rexwapi/common/timeframes'));

5 Cevap

Ben sadece kullanabilirsiniz düşünüyorum

https://username:password@rexms.net:32005/rexwapi/common/timeframes

Sen curl_setopt CURLOPT_USERPWD seçeneğini ayarlayın ile curl kullanmanız gerekir.

Sen Http başlık Yetkilendirme ayarlamanız gerekir. Bir base64 kodlanmış sürümüne değerini ayarlayın

Basic username:password

Yani sunucu temel kimlik denetimi kullanarak üstleniyor. Windows sunucu isteğinde auth ne tür görmek için Fiddler kullanabilirsiniz.

HTTP / Soket / net: Üç ARMUT paketlerini kullanarak bu yaklaşım için iyi olabilir. HTTP paketi ile kolayca Basic Auth alemine DİNLENME isteklerini yapmak mümkün.

Daha fazla kontrol için: How To: Making a PHP REST client to call REST resources

Cevabı buldum in another SO question

function get_rex_xml($url)
{
    $curl = curl_init($url);
    curl_setopt_array($curl, array(CURLOPT_RETURNTRANSFER => TRUE,CURLOPT_USERPWD => 'username:password'));
    ob_start();
    $response_xml = curl_exec($curl);
    ob_end_clean();
    curl_close($curl);
    return $response_xml;
}

header('content-type:text/xml');
echo get_rex_xml('https://rexms.net:32005/rexwapi/common/timeframes');