Skip to main content

WSGI Server on TCP

Project description

About

WSGIT is a server which runs WSGI applications on TCP not HTTP so that helps you make server of non-http-clients(such as mobile application) with wsgi applications(like django or flask). It makes mock WSGI Request from TCP to run WSGI application. It receives json response from WSGI application and sends it as bson after adds some HTTP header information in dict.

Examples

Django Example:

def index(request):
    return HttpResponse(json.dumps(dict(page='index')), mimetype='application/json')

urlpatterns = patterns('',
    url(r'^$', index),
)

Run Example:

$ wsgit 0:9338 djangoproject.wsgi.application

Request Example:

>>> from socket import *
>>> import bson
>>> bson.patch_socket()
>>> s = socket(AF_INET, SOCK_STREAM)
>>> s.connect(('127.0.0.1', 9338))
>>> s.sendobj({'url':'/', 'method': 'GET'})
>>> print s.recvobj()
>>> {u'status': {u'reason': 'OK', u'code': '200'}, u'page': u'index'}
>>> s.close()

Changelog

  • 2014.09.18: 0.2.1:

    • Under gevent

    • You must put “method” parameter to choose method

    • CommandRequest added, some features will be implemented

  • 2014.09.14: 0.1.3:

    • Supports HTTP Request headers

  • 2013.10.05: 0.1.2:

    • Command wsgit supports ssl options --keyfile and --certfile

  • 2013.10.03: 0.1.1:

    • Supports SSL

  • 2013.09.22: 0.1:

    • create mock environ to call wsgi application

    • run server with command wsgit

Project details


Download files

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

Source Distribution

WSGIT-0.2.1.tar.gz (5.7 kB view details)

Uploaded Source

File details

Details for the file WSGIT-0.2.1.tar.gz.

File metadata

  • Download URL: WSGIT-0.2.1.tar.gz
  • Upload date:
  • Size: 5.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for WSGIT-0.2.1.tar.gz
Algorithm Hash digest
SHA256 c9e9ed58d67804d616dc45e92df2feb8fc0ae69153e3e76b7c11d303c321736c
MD5 ff4531b7d0311ff686497c15d72c7fbb
BLAKE2b-256 c2419dd29ef95864083247b1f8e110fa5476de77bae7cb7f65a327a1a7c99f96

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page