[python] HTTP Autorizace + metoda post

Leos Pol leos.pol na firma.seznam.cz
Čtvrtek Duben 17 08:45:15 CEST 2008


Ahoj,

chybka je v parametru uri, tam se ceka string nebo sekvence stringu. 
Oprava je:

	auth_handler.add_password(realm='PDQ Application', uri=req.get_full_url(), user='user', passwd='password')


Leo

Calis.martin na seznam.cz wrote:
> Dobrý den, nedávno jsem psal o svém problému ohldedně autorizace... 
> Stále jsem na věc nepřišel. Napadlo mně udělat tohle:
>
> "import urllib2,urllib
>
> adresa = "http://www.cheatfella.com/authentifikace.php"
> parametry = {
>     "print " : "Hello world"}
>
> params = urllib.urlencode(parametry)  # Prekoduje parametry do tvaru vhodneho pro odeslani
> req = urllib2.Request(adresa, params) # Vytvori request, coz je smichanina adresy a parametru, pripadne i hlavicek
>
> #~ spojeni = urllib2.urlopen(req)       # Otevre
> #~ spojeni.read()  
> #~ spojeni.close()        
>
>
>
>
> # Create an OpenerDirector with support for Basic HTTP Authentication...
> auth_handler = urllib2.HTTPBasicAuthHandler()
> auth_handler.add_password(realm='PDQ Application',
>                           uri=req,
>                           user='user',
>                           passwd='password')
> opener = urllib2.build_opener(auth_handler)
> # ...and install it globally so it can be used with urlopen.
> urllib2.install_opener(opener)
> urllib2.urlopen(req)"
>
> což nefunguje a vypíše nasledující hlášku: "
> Traceback (most recent call last):
>   File "I:\Programy v Pythonu\MOJE\Ukoly\pripojeni.py", line 22, in <module>
>     passwd='password')
>   File "C:\Python25\lib\urllib2.py", line 706, in add_password
>     [self.reduce_uri(u, default_port) for u in uri])
> TypeError: iteration over non-sequence"
>
>
> Nevíte kde je chyba? 
>
> -----------------------------
> Moto: Teorie je, když všechno víme, ale nic nefunguje. Praxe je, když všechno funguje, ale nikdo neví proč. My jsme spojili teorii s praxí - nic nefunguje a nikdo neví proč. 
> _______________________________________________
> Python mailing list
> Python na py.cz
> http://www.py.cz/mailman/listinfo/python
>
>   


Další informace o konferenci Python