Esempio n. 1
0
def active(req, resp):
    if req.method == "GET":
        #rsp_val = str(sw_pin.value() == 1).lower()
        rsp_val = 'true'
        yield from start_response(resp, "application/json")
        yield from resp.awrite('{"active": %s}' % rsp_val)
    elif req.method == "PUT":
        activate_switch()
        yield from start_response(resp, status="200")
    else:
        yield from start_response(resp, status="405")
Esempio n. 2
0
def headers_leave(req, resp):
    yield from picoweb.start_response(resp)
    assert not hasattr(req, "headers")
    yield from resp.awrite("Reading headers directly from input request:")
    yield from resp.awrite("<pre>")
    while True:
        l = yield from req.reader.readline()
        if l == b"\r\n":
            break
        yield from resp.awrite(l)
    yield from resp.awrite("</pre>")
Esempio n. 3
0
def homepage(request, response):
    if request.method == 'POST':
        print(request.headers)
        yield from request.read_form_data()
        if request.form.get('content'):
            note_id = Note.create(content=request.form['content'][0])
            note = list(Note.get_id(note_id))[0]
            print("note after create:", note)
            tmpl = app._load_template('note.html')
            yield from picoweb.start_response(response, "application/json")
            yield from response.awriteiter(ijson.idumps({'note': tmpl(note), 'success': 1}))
            return

        yield from picoweb.jsonify(response, {'success': 0})
        return

    yield from picoweb.start_response(response)
#    notes = Note.public().paginate(get_page(), 50)
    notes = Note.public()
    yield from app.render_template(response, 'homepage.html', (notes,))
Esempio n. 4
0
def index(req, resp):
    yield from picoweb.start_response(resp)
    yield from resp.awrite("POST form:<br>")
    yield from resp.awrite("<form action='form_url' method='POST'>"
        "What is your name? <input name='name' /> "
        "<input type='submit'></form>")

    yield from resp.awrite("GET form:<br>")
    # GET is the default
    yield from resp.awrite("<form action='form_url'>"
        "What is your name? <input name='name' /> "
        "<input type='submit'></form>")
Esempio n. 5
0
def index(req, resp):
    if req.method == "POST":
        yield from req.read_form_data()
    else:  # GET, apparently
        # Note: parse_qs() is not a coroutine, but a normal function.
        # But you can call it using yield from too.
        req.parse_qs()

    # Whether form data comes from GET or POST request, once parsed,
    # it's available as req.form dictionary

    yield from picoweb.start_response(resp)
    yield from resp.awrite("Hello %s!" % req.form["name"])
Esempio n. 6
0
def index(req, resp):
    if b"Authorization" not in req.headers:
        yield from resp.awrite(
            'HTTP/1.0 401 NA\r\n'
            'WWW-Authenticate: Basic realm="Picoweb Realm"\r\n'
            '\r\n'
        )
        return

    auth = req.headers[b"Authorization"].split(None, 1)[1]
    auth = ubinascii.a2b_base64(auth).decode()
    username, passwd = auth.split(":", 1)
    yield from picoweb.start_response(resp)
    yield from resp.awrite("You logged in with username: %s, password: %s" % (username, passwd))
Esempio n. 7
0
def index(req, resp):

    headers = {"X-MyHeader1": "foo", "X-MyHeader2": "bar"}

    # Passing headers as a positional param is more efficient,
    # but we pass by keyword here ;-)
    yield from picoweb.start_response(resp, headers=headers)
    yield from resp.awrite(b"""\
<!DOCTYPE html>
<html>
<head>
<link href="style.css" rel="stylesheet">
</head>
<body>
<p>The style.css should be cached and might be encoded.</p>
<p class="green">Check out your webdev tool!</p>
</body>
</html>""")
Esempio n. 8
0
def index(req, resp):
    yield from picoweb.start_response(resp)
    yield from resp.awrite("""\
<!DOCTYPE html>
<html>
<head>
<script>
var source = new EventSource("events");
source.onmessage = function(event) {
    document.getElementById("result").innerHTML += event.data + "<br>";
}
source.onerror = function(error) {
    console.log(error);
    document.getElementById("result").innerHTML += "EventSource error:" + error + "<br>";
}
</script>
</head>
<body>
<div id="result"></div>
</body>
</html>
""")
Esempio n. 9
0
def squares(req, resp):
    # Or can use a convenience function start_response() (see its source for
    # extra params it takes).
    yield from picoweb.start_response(resp)
    yield from app.render_template(resp, "squares.tpl", (req, ))
Esempio n. 10
0
def squares(req, resp):
    # Or can use a convenience function start_response() (see its source for
    # extra params it takes).
    yield from picoweb.start_response(resp)
    yield from app.render_template(resp, "squares.tpl", (req,))
Esempio n. 11
0
def headers_parse(req, resp):
    yield from picoweb.start_response(resp)
    yield from resp.awrite("<table border='1'>")
    for h, v in req.headers.items():
        yield from resp.awrite("<tr><td>%s</td><td>%s</td></tr>\r\n" % (h, v))
    yield from resp.awrite("</table>")
Esempio n. 12
0
def headers_skip(req, resp):
    yield from picoweb.start_response(resp)
    assert not hasattr(req, "headers")
    yield from resp.awrite("No <tt>req.headers</tt>.")
Esempio n. 13
0
def turn_off(req, resp):
    pin.value(0)
    yield from picoweb.start_response(resp, content_type='application/json')
    yield from resp.awrite('{"light":"Off"}')
Esempio n. 14
0
def index(req, resp):
    yield from picoweb.start_response(resp)
    yield from resp.awrite("This is webapp #1")
Esempio n. 15
0
def index(req, resp):
    blink_led()
    yield from picoweb.start_response(resp)
    yield from resp.awrite(';-)')
Esempio n. 16
0
def error(res, msg='bad request'):
  yield from picoweb.start_response(res, status='400')
  yield from res.awrite("{}\r\n".format(msg))
Esempio n. 17
0
def index(req, resp):
    yield from picoweb.start_response(resp)
    yield from resp.awrite(str(d.temperature()))
Esempio n. 18
0
def squares(req, resp):
    yield from picoweb.start_response(resp)
    yield from app.render_template(resp, "squares.tpl", (req,))
def index(req, resp):
    yield from picoweb.start_response(resp)
    yield from resp.awrite(html)
Esempio n. 20
0
def index(req, resp):
    yield from picoweb.start_response(resp)
    yield from resp.awrite("This is webapp #1")
Esempio n. 21
0
def index(req, resp):
    yield from picoweb.start_response(resp)
    yield from resp.awrite(
        "I can show you a table of <a href='squares'>squares</a>.")
Esempio n. 22
0
def hello(req, resp):
    yield from picoweb.start_response(resp)
    # Here's how you extract matched groups from a regex URI match
    yield from resp.awrite("Hello " + req.url_match.group(1))
Esempio n. 23
0
def index(req, resp):
    yield from picoweb.start_response(resp)
    yield from app.render_template(resp, "index.tpl", (req, voltage()))
Esempio n. 24
0
def index(req, resp):
    yield from picoweb.start_response(resp)
    yield from resp.awrite(b"Static image: <img src='static/logo.png'><br />")
    yield from resp.awrite(b"Dynamic image: <img src='dyna-logo.png'><br />")
Esempio n. 25
0
def hello(req, resp):
    yield from picoweb.start_response(resp)
    # Here's how you extract matched groups from a regex URI match
    yield from resp.awrite("Hello " + req.url_match.group(1))
Esempio n. 26
0
def index(req, resp):
    yield from picoweb.start_response(resp)
    yield from resp.awrite("Hello world from picoweb running on the ESP32")
Esempio n. 27
0
def index(req, resp):
    yield from picoweb.start_response(resp)
    yield from resp.awrite("Servidor de Prueba")
Esempio n. 28
0
def index(req, resp):
    yield from picoweb.start_response(resp)
    yield from resp.awrite("I can show you a table of <a href='squares'>squares</a>.")
Esempio n. 29
0
def index(req, resp):
    yield from picoweb.start_response(resp)
    yield from resp.awrite("<a href='app1'>app1<a> or <a href='app2'>app2</a>")
Esempio n. 30
0
def index(req, resp):
    yield from picoweb.start_response(resp)
    yield from resp.awrite("You logged in with username: %s, password: %s" % (req.username, req.passwd))
Esempio n. 31
0
def squares(req, resp):
    yield from picoweb.start_response(resp)
    yield from app.render_template(resp, "squares.tpl", (req, ))