Hi Nathaniel, The string 'bug' needs to be a bytestring, b'bug'. This is indeed a bug, but Twisted 19.7.0 will at least generate a deprecation warning about it. A future version of Twisted will throw an exception (once the deprecation period has passed).
https://twistedmatrix.com/trac/ticket/9135 ---Tom On Tue, Nov 5, 2019, at 12:20 PM, Nathaniel Haggard wrote: > # This code doesn't call getChild in python3, but it does in python2 (python2 > throws AttributeError, but python3 doesn't) with "curl > http://127.0.0.1:8803/bug/a" and Twisted==19.7.0 with python3.5.2: > > from twisted.application import internet, service, strports > from twisted.web.resource import Resource > from twisted.web.server import Site > from twisted.internet import reactor > from twisted.python import log > > > from twisted.web.resource import Resource > > > > class R(Resource): > allowedMethods=('GET',) > def getChild(self, name, request): > pass > > > r = Resource() > r.putChild('bug', R()) > > application = service.Application('web') > site = Site(r) > sc = service.IServiceCollection(application) > i = strports.service("tcp:8803", site) > i.setServiceParent(sc) > > _______________________________________________ > Twisted-web mailing list > [email protected] > https://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-web >
_______________________________________________ Twisted-web mailing list [email protected] https://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-web
