socks.set_default_proxy() tallentaa oletusarvot tuleville PySocks socksocket -olioille. Se ei korvaa Pythonin natiivia socket-luokkaa. Näin ollen se ei ohjaa ftplibiä uudelleen pelkästään siksi, että kutsu tapahtuu ennen FTP-yhteyttä.

Seuraa konstruktoreita, älä kuvausta, jossa välityspalvelimen URL on. ftplib luo ohjausyhteyden ja lisää siirtoyhteyksiä. Passiivisessa FTP:ssä onnistunut kirjautuminen todistaa vain, että ohjausyhteys toimi; myös listaukseen tai tiedostonsiirtoon käytettävä datayhteys tarvitsee aiotun reitin.

Resepti, joka korvaa socket.socket:n tai kääriä moduulin, tekee muun toimen kuin asettaa PySocksin oletusarvot. Se voi vaikuttaa muihin kirjastoihin, jotka jakavat saman moduulin. Alkuperäisen tilapäinen palauttaminen ei eristä samanaikaisia yhteyksiä muutoksesta.

Mukautettu ftplib-aliluokka voi kattaa yhteyspolut, mutta kopioidut sisäosat kantavat sen Python-julkaisun oletukset, josta ne ovat peräisin, mukaan lukien aikakatkaisun merkit ja protokollan käsittely. Standardikirjaston päivitykset eivät päivitä kopiota.

Valitse ylläpidetty asiakasohjelma tai tuettu integraatio vaadittuun välityspalvelimeen ja FTP-tilaan. PycURL:n passiivisen FTP-latauksen esimerkki havainnollistaa erillistä asiakaspolkua. Sovelluksen omistamaan mukautukseen selvitä, mikä konstruktori avaa kunkin ohjaus- ja datayhteyden, ja säilytä ylävirran toiminta, jonka se korvaa. Oikea välityspalvelimen arvo on hyödyllinen vain silloin, kun nuo konstruktorit todella käyttävät sitä.

Aiheeseen liittyvät artikkelit