Bottle Python RaspberryPi

[Raspberry Pi] Bottleで、ID・パスワード認証付きのWebサーバを作る

更新日:

Raspberry Piを使い、Bottleで、ID、パスワード認証付きのWebサーバを作る方法を紹介します。

スポンサードサーチ

■前提

Python3、Bottleはインストール済みという前提です。
インストールしていない人は、Python3、Bottleをインストールしてください。

■今回作成するアプリ

ブラウザー上で、ID、パスワードを入力させて、認証結果を表示するサイトを作ります。

■サンプルコード

コンソールを立ち上げて、以下のpythonコードを、app.pyで保存してください。

# -*- coding: utf-8 -*-
from bottle import route, run, request
import os
 
@route("/login")
def login():
    return """
    <form action="/login" method="post">
    Username: <input name="username" type="text" />
    Password: <input name="password" type="password" />
    <input value="Login" type="submit" />
    </form>
    """
 
@route("/login", method="POST")
def do_login():
    username = request.forms.get("username")
    password = request.forms.get("password")
    if check_login(username, password):
        return "<p>Your ligin infomation was correct.</p>"
    else:
        return "<p>Login failed.</p>"
 
def check_login(username, password):
    if username == "user" and password == "pass":
        return True
    else:
        return False
 
run(host="0.0.0.0", port=int(os.environ.get("PORT", 5000)))

■サーバ起動方法

・コンソールを立ち上げて、
・app.pyが保存されているディレクトリに移動します。
・以下のコマンドを入力します。

$ python3 app.py

■ブラウザー起動方法

・ブラウザを開いてください
・ブラウザのurl画面に、以下の内容を入力してください。

http://localhost:5000/login

ブラウザ上に、ID、パスワードを入力する画面が出てきますので、以下を入力してください。
・ID=user
・password=pass

そうすると、以下の画面が表示されます。

Your ligin infomation was correct.

次に、不正なIDやパスワードが使われた場合を確かめてみます。
もう一度、以下のurlを表示させます。

http://localhost:5000/login

ブラウザ上に、ID、パスワードを入力する画面が出てきますので、以下を入力してください。
・ID=user2
・password=pass


そうすると、以下の画面が表示されます。

Login failed.

スポンサードサーチ

■まとめ

今回は、Bottleを使った例として、ID、パスワード認証付きのWebサーバを作成する方法を紹介しました。

独学プログラマー Python言語の基本から仕事のやり方まで

-Bottle, Python, RaspberryPi
-,

Copyright© ラズパイの実 , 2020 All Rights Reserved Powered by STINGER.