Asita is a web application framework for python. It is designed to be easy to use and be more easy for javascript users to use python frameworks because it is based on express-js framework.
Install this package using pip
$ pip install asita
from asita.application import Application
# creating application instance
app = Application()
# callback when web server is ready
def listen_callback(error):
if error:
raise error
print(f"Server listening on port 1000.")
# listen the webserver on port (for instance port 1000)
app.listen(1000, lambda error: listen_callback(error))
Name | Parameters | Description |
---|---|---|
use(path, router) | path: str, callback: Router | create a router with default path like "/profile" and put some routes like "/add" |
all(path, callback) | path: string, callback: function | Routes an HTTP request, where all is the HTTP method such as GET, PUT, POST, OATCH, DELETE, HEAD |
post(path, callback) | path: string, callback: function | Routes HTTP POST requests |
get(path, callback) | path: string, callback: function | Routes HTTP GET requests |
put(path, callback) | path: string, callback: function | Routes HTTP PUT requests |
patch(path, callback) | path: string, callback: function | Routes HTTP PATCH requests |
delete(path, callback) | path: string, callback: function | Routes HTTP DELETE requests |
head(path, callback) | path: string, callback: function | Routes HTTP HEAD requests |
Name | Parameters | Description |
---|---|---|
define_asset(name, directory) | name: string, directory: string | Define the asset directory access |
listen(port, callback) | port: integer, callback: function | start listening a port |
# some awesome things check request and response methods :-)
def home(request, response):
pass
# "/" is the default path
app.all("/", lambda req, res: home(req, res))
To see more example, check the example file.
Name | Description |
---|---|
headers | headers of the request |
session | client session |
path | the url's path |
request_type | type of request |
server_address | address of the requested server |
server_version | version of the requested server |
protocol_version | version of the HTTP protocol |
body | the body content of the POST request |
query | url params |
Name | Parameters | Description |
---|---|---|
get(value) | value: string | get a header of the request |
accepts() | none | get types which are accepted |
Name | Parameters | Description |
---|---|---|
status(code) | code: HttpResponses | return the response's state |
set_header(key, value) | key: string, value: string | add/update headers |
send(data, type?, encoded?) | data: object, type: string, encoded: boolean, is_asset: boolean | send response |
json(data) | data: dict | write json on a page |
render(path) | path: string | render html file. |
end() | none | stop the current request |
? means that it is optionnal
Name | Parameters | Description |
---|---|---|
add() | none | create new empty session |
all() | none | get all sessions |
has(sessionId) | key: string | verify if a session exists |
get(sessionId) | key: string | get a session by id |
delete(sessionId) | key: string | delete session by id |
radnom_session_id @Static method | none | get all sessions |
Name | Parameters | Description |
---|---|---|
get_session_id | none | get the id of the session |
set(key, value) | key: string, value: string | add data to the client session |
has(key) | key: string | verify if client session has the selected data |
get(key) | key: string | get data from client session |
delete(key) | key: string | delete data from client session |
all() | none | get client session data |
HTTP Methods |
---|
GET |
POST |
PUT |
DELETE |
PATCH |
HEAD |
ALL |
Response types | Codes |
---|---|
OK | 200 |
NO_CONTENT | 204 |
UNAUTHORIZED | 401 |
FORBIDDEN | 403 |
NOT_FOUND | 404 |
BAD_REQUEST | 400 |
Response types | Codes |
---|---|
INTERNAL_SERVER_ERROR | 500 |
MIT LICENSE