[Python] protocollo x509 e web server
Matteo Perini
perini.matteo a gmail.com
Gio 11 Maggio 2017 15:16:53 CEST
> Ti consiglio di scaricarti soapui:
>
> - https://www.soapui.org/downloads/soapui.html
>
> Testa il ws da li'.
>
> Quando hai una richiesta che va a buon fine dovresti poter vedere la
> richiesta HTTP completa che fa.
>
> Poi prova a replicarla con il tuo codice Python.
> Dopo averne provate un sacco, la libreria che ho usato l'ultima volta
> e' stata pysimplesoap.
> Ovviamente usa quella che meglio si adatta al tuo caso (se vuoi
> smanettare un po' pure requests va bene, addirittura una volta ho
> usato curl per fare dei test).
>
> Tip per il testing.
> A volte, per vedere la richiesta sopa che genero, lancio il comando:
>
> nc -l 8000 (o la porta che vuoi)
>
> ed uso localhost:8000 come end point.
>
> Ciao.
Ciao,
grazie dei consigli.
sto provando soappy!
Il codice è semplicemente questo:
url='https://webservices-test.infotn.it/RegistroEsterni/SGAService.svc?wsdl'
SOAPpy.Config.SSL.cert_file = 'SGA-Services.cer'
SOAPpy.Config.SSL.key_file = 'privateKey.pem'
server = SOAPpy.SOAPProxy(url)
print server.IstituzioniScolastiche()
Mi viene chiesta la password che inserisco ma il risultato è questo errore:
File "pc.py", line 12, in <module>
print server.IstituzioniScolastiche()
File "/usr/local/lib/python2.7/dist-packages/SOAPpy/Client.py", line
547, in __call__
return self.__r_call(*args, **kw)
File "/usr/local/lib/python2.7/dist-packages/SOAPpy/Client.py", line
569, in __r_call
self.__hd, self.__ma)
File "/usr/local/lib/python2.7/dist-packages/SOAPpy/Client.py", line
432, in __call
timeout = self.timeout)
File "/usr/local/lib/python2.7/dist-packages/SOAPpy/Client.py", line
208, in call
r = httplib.HTTPS(real_addr, key_file=config.SSL.key_file,
cert_file=config.SSL.cert_file)
File "/usr/lib/python2.7/httplib.py", line 1286, in __init__
context=context))
File "/usr/lib/python2.7/httplib.py", line 1249, in __init__
context.load_cert_chain(cert_file, key_file)
IOError: [Errno 22] Invalid argument
ho provato a cercare online l'errore ma non trovo risposte.
Idee?
Grazie
Maggiori informazioni sulla lista
Python