Skip to main content

txwebutils - utilities for twisted.web

PyPI version Build Status GitHub license

What is txwebutils?

txwebutils is a pure-python library containing various utility functions and implementations for the twisted.web web framework. It is the result of combining useful code from my various other projects.

Features

  • support for unicode string results for twisted.web.resource.Resource.render_* methods.
  • support for deferreds results for twisted.web.resource.Resource.render_*.
  • utility functions to get the URL parameters in unicode.
  • A custom cross-site authentication implementation using twisted.cred.

Examples

# -*- coding: utf-8 -*-
"""
Example for @unicode_response.

The @unicode_response decorator allows both unicode and/or deferred results in render_* methods.
"""
from twisted.internet import defer
from twisted.web.resource import Resource
from txwebutils import unicode_response


class UnicodeRespondingResource(Resource):
    """
    This resource serves a unicode string on a GET request.

    @unicode_response tries its best to guess the encoding correctly.
    """
    @unicode_response
    def render_GET(self, request):
        return u"This is a unicode string: äöüß"

class BinaryRespondingResource(Resource):
    """
    This resource serves a binary string on a GET request.
    This shows that you can return whatever string type you desire.
    """
    @unicode_response
    def render_GET(self, request):
        return b"This is a binary string"

class DeferredResultingResource(Resource)
	"""
    This resource serves a deferred which fires with a unicode string on a GET request.
    """
    @unicode_response
    def render_GET(self, request):
        return defer.succeed(u"This is a unicode string: äöüß")

class InlineCallbacksResource(Resource)
	"""
    This resource uses 'twisted.internet.defer.inlineCallbacks'
    """
    @unicode_response
    @defer.inlineCallbacks
    def render_GET(self, request):
        s = yield defer.succeed(u"This is a unicode string: äöüß")
        defer.returnValue(s)

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

txwebutils-0.0.1.tar.gz (13.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

txwebutils-0.0.1-py2-none-any.whl (17.3 kB view details)

Uploaded Python 2

File details

Details for the file txwebutils-0.0.1.tar.gz.

File metadata

  • Download URL: txwebutils-0.0.1.tar.gz
  • Upload date:
  • Size: 13.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.45.0 CPython/3.7.3

File hashes

Hashes for txwebutils-0.0.1.tar.gz
Algorithm Hash digest
SHA256 dc7502ee720cec2598506bb2efcc695927c5c8053175f07c7f3c85e625591996
MD5 04db7bb173192ec00de8df1dd2b3beef
BLAKE2b-256 d0ef779c70e18471d92e84e1abcb1cf56145009d163911d54fb0395117422989

See more details on using hashes here.

File details

Details for the file txwebutils-0.0.1-py2-none-any.whl.

File metadata

  • Download URL: txwebutils-0.0.1-py2-none-any.whl
  • Upload date:
  • Size: 17.3 kB
  • Tags: Python 2
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.45.0 CPython/3.7.3

File hashes

Hashes for txwebutils-0.0.1-py2-none-any.whl
Algorithm Hash digest
SHA256 06bf813f7b2a8886d47ba126bfb2e55a262f7bcd454935052c3586e51eceae9b
MD5 ee5b6aa947d555c93984ff2162e66e1a
BLAKE2b-256 2cae5d4ca8a13fade3ca4baaadc098694a0f85595930f1c872c3705f168be489

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.0.1 This release

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page