【Webアプリ】自作Webアプリを簡単に課金可能にする方法

f:id:utalab:20200514161901p:plain

Webアプリをいろいろ作ってみましたが、複数のユーザーが使用でき、カスタマイズ可能で、課金も可能になるしくみを、いろいろ考えていました。

考えていたことの詳細

複数のユーザーが使用可能

Web上にあるものであれば、もちろん複数人使用は可能ですね。

複数といっても、万単位でない限りは、普通のレンタルサーバーで十分でしょう。

もしも万単位とか、一時的に大量の人がアクセスする場合は、AWSなど考える必要があります。

カスタマイズ可能

カスタマイズするということは、データを記憶させないといけません。

ちょっとしたデータ

クッキーを使う程度でいいと思います。

かなりのデータ

データベースを使う必要があります。

さらに、ユーザー単位でデータを使用するので、ユーザー認証をする必要があります。

ユーザー認証をするということは、個人情報を扱うということです。

自作Webアプリで個人情報を保存する部分を自作でできるかというと、相当なプロでないと堅牢なシステムは作れないと思うので、初心者では無理でしょう。

課金可能

課金する場合は、ユーザーやクレジットカード情報、決済システムが必要となります。もちろん、相当なプロでないと決済システムは作れません。

課題の分離

すべてを自作でまかなうことは、ほぼ不可能です。となると、もっとも大事な部分は他のシステムにまかせて、自作Webアプリは、その機能を使うしくみがあればよいですね。

トーマスというシステム

ほかのブログでも書いていますが、トーマスというシステムがあります。

utalab.com

参考ブログ

utalab.com

こちらの記事に注目しました。

その中でも、こちらの記事です。

f:id:utalab:20200514163633p:plain

自作Webアプリ(トーマス連携)

簡単な認証確認です。

自作Webアプリを実行する前に、ライセンスコードを取得する必要があります。

トーマスのログイン画面です。

うたらぼメルマガに登録するとログインができます。

f:id:utalab:20200514165954p:plain

トーマスにログインします。

f:id:utalab:20200514170502p:plain

画面の右上をクリックすると、ライセンス一覧などが表示されます。

f:id:utalab:20200514170746p:plain

ライセンス一覧をクリックすると、以下のように表示されます。

f:id:utalab:20200514171122p:plain

「うたらぼメルマガ」の「ライセンス情報詳細」をクリックします。

f:id:utalab:20200514171446p:plain

ライセンスコードをノートなどに記録しておいてください。

自作Webアプリをこちらから起動します。

f:id:utalab:20200514174448p:plain

自作Webアプリの「sec(login)」をクリックします。

f:id:utalab:20200514174654p:plain

login idは、トーマスのログインID、license idは、記録していたライセンスコードです。

ログインID,ライセンスコードを入力し、sendボタンを押すと以下の画面になります。

認証OK

右上のリンクが「sec(logout)」となります。

f:id:utalab:20200514175028p:plain

認証NG

f:id:utalab:20200514175423p:plain

err_idが102の場合、Webアプリの設置場所が変更されたという意味です。URLを変更したのは当然ですが、自分のPCとレンタルサーバーで実行するのも、変更されたとみなされます。

対処方法

トーマスにログインし、ライセンスコードを表示してください。

f:id:utalab:20200514180255p:plain

ライセンスコードの下に、ツール認証がありますので、「認証をリセットする」ボタンを押してください。

再度ログインできますが、初回ログイン時に、場所を記憶しますので、たとえば、1回目自分のPCでログインし、2回目はレンタルサーバーでログインした場合は、102エラーとなりますので、その場合はまた認証のリセットをお願いします。

ただし、うたらぼメルマガから登録した場合は、いろんなWebアプリをサンプルとして使用することがあるので、これから先に作成するWebアプリの102エラーは、認証OKにするつもりです。

認証後、右上の「sec(logout)」のリンクをクリックします。

f:id:utalab:20200514181138p:plain

「ログアウト」ボタンを押すと、右上のリンクが「sec(login)」となります。

f:id:utalab:20200514181245p:plain

自作Webアプリの注意点

データベースと紐づけるためには、ログインIDかライセンスコードのどちらかとなります。

ログインID=メールアドレスなので、万が一自作Webアプリからデータがとられた場合は、メールアドレスが悪用される恐れがあります。

それを考えると、ライセンスコードと紐づけるのがいいかもしれません。

データベースを利用したWebアプリを作成

個人的にレンタルサーバーはヘテムルを使用しています。

なんと、未使用領域が以下のとおりです。

f:id:utalab:20200514181848p:plain

ということで、自作Webアプリとデータベースで、いろいろ利用していきたいですね。