Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    Autenticazione SOAP in HTTPS

    Ciao a tutti,
    premetto che non sono un grande esperto di SOAP quindi è possibile che stia tralasciando qualcosa di banale.
    Ad ogni modo la mia necessità è collegarmi ad un WSDL, che raggiungo correttamente via browser, e che sta su un server pubblicato in HTTPS. Basandomi su un collegamento ad un altro WSDL che utilizzo, che però è pubblicato in HTTP, e che funziona faccio questo:

    Codice PHP:
    $url "https://geniocom.it/bbi-api/services/Bbi?wsdl";
    try{
        
    $client = new SoapClient($url,array(
    "login"=>"68SI5E51So3e946\8eOpee6rateore0",
    "password"=>"xxxxxx",
    "connection_timeout"=>25,
    "location"=>$url,
    "trace"=>1
        
    ));
        
    print_r($client->__getFunctions());
    }catch (
    SoapFault $exception){
        echo 
    '<pre>EXCEPTION='.$exception.'</pre>';

    Quello che ricevo è questo:

    Codice PHP:
    EXCEPTION=SoapFault exception: [WSDLSOAP-ERRORParsing WSDLCouldn't load from 'https://geniocom.it/bbi-api/services/Bbi?wsdl' : failed to load external entity "https://geniocom.it/bbi-api/services/Bbi?wsdl"
     
    in /var/www/html/spotter/test.php:64
    Stack trace
    :
    #0 /var/www/html/spotter/test.php(64): SoapClient->SoapClient('https://genioco...', Array)
    #1 {main} 
    Un paio di considerazioni. Dato che il WSDL che sto attualmente utilizzando senza problemi non richiede autenticazione, è un aspetto che non conosco. Quindi gugolando ho provato queste combinazioni di parametri:
    1. login - password (come nel codice postato)
    2. proxy_login - proxy_password
    3. user - password (nomi usati nel WSDL)
    Inoltre, dato che il nome utente contiene un \ ho supposto anche che fosse un problema di escape quindi ho provato a lasciare il nome originale, ad utilizzare \\ e anche \\\ ed ho due situazioni.
    1. col nome originale usando i parametri "proxy_login - proxy_password" l'errore è lo stesso di prima.
    2. usando i parametri "login - password" se metto \\\ l'errore rimane uguale mentre col nome originale e con \\ l'errore diventa
    Codice PHP:
    EXCEPTION=SoapFault exception: [WSDLSOAP-ERRORParsing Schemaunexpected  in element in /var/www/html/spotter/test.php:67
    Stack trace
    :
    #0 /var/www/html/spotter/test.php(67): SoapClient->SoapClient('https://genioco...', Array)
    #1 {main} 


    AIUTO! Cosa sto missando????

    Grazie in anticipo

  2. #2
    Mi sono accorto adesso che nn ha messo lo \ nel nome: quello corretto è 68SI5E51So3e946\8eOpee6rateore0

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.