6
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

『TMS WebCOREを使用しています』から1年経過しました。

Posted at

フロントエンド開発として、RESTfulを扱うのも、少し慣れてきました。(現状は、従来の2層の開発+メンテも並行しい続けています。)

今の私が抱えている課題は、RESTfulのバックエンド側の構築ツールの選択です。

選択条件としては、データベースを変更(デーブル構造など..)した場合に、コードの変更箇所が少なく再現できるものを使用したい。(理由は長期間そのコードに触らない場合でも、メンテナンスが容易なもの使いたい為)


いま、新たに選択するとなると、RESTful API作成のツールの選択肢が非常に多いと感じています(私の知識不足で、適切な判断ができていない......)

TMSさんでは all-accessで、xdataという製品が使用できます。
言語では

 Java
 PHP
 Python FastAPI
 Python Django
 Node.js + Express
 Go言語
 GraphQL など

変則的なもので、PostgreSQLが限定となりますが

 PostgREST (https://postgrest.org/en/v9.0/)

CMSなどを使用するもの

 WP REST API (WordPress の REST API)
 concrete5 8.以降で REST API がサポート など

有償無償のクラウドサービス

 Kintone
 プリザンター  など


などなど、たぶん、知らないだけで、もっと多くあるのだと思います。

『なにがよいでしょう』の問いに対しては、おそらく『使用する目的により、最適なものは違います』
となってしまうかと思うので、実際に踏み込んで、試せる場があっても、よいか思い、
今回、『異種なプログラミング交流会 オフライン』
https://ishuprog.connpass.com/event/233617/
というのを2021/12/18土曜日14:00~大阪の本町で、開催します。


今回の交流会で、実施予定としたいものは、バックエンドで作成したデータを、RESTfulAPIのURIとして、フロントエンドから、アクセスするといった内容です。

予定しているバックエンドは PHP Yii で、データベースは MySQL

CREATE TABLE test1
(
    id integer NOT NULL ,
    name varchar(20),
    qty  numeric(12,2)
);
INSERT INTO public.test1(id, name, qty) VALUES (1,'AAAA', 1.1);
INSERT INTO public.test1(id, name, qty) VALUES (2,'BBBB', 2.2);
INSERT INTO public.test1(id, name, qty) VALUES (3,'CCCC', 3.3);
INSERT INTO public.test1(id, name, qty) VALUES (4,'DDDD', 4.4);
INSERT INTO public.test1(id, name, qty) VALUES (5,'EEEE', 5.5);

このデータを、RESTful API として、 http://xxxxxxx.json などとして作成

これをフロント(クライアント)から

GET     http://xxxxxxx.json   
GET     http://xxxxxxx.json/1  
POST    http://xxxxxxx.json/6
PUT     http://xxxxxxx.json/6
DELETE  http://xxxxxxx.json/6

のような動作を
PostMan/RestDebugger/curl/TMS WebCOREを使用して(ハンズオン的な感じで)実行する予定です。


以下が、別のサンプルデータですが実行したいイメージです。
RestDebugger(サンプルURIのデータ表示)
a002.png
curl(サンプルURIのデータ表示)
a004.png
Delphi + TMS WebCORE(サンプルURIのデータ表示)
a001.png
PostManは、使ったことないので、今回どなたかに教えてもらえると、ウレシイ。
a003.png


今後は、認証やCORS、フロント開発ツールの比較など、(いままでどらかというと避けていた)その他のWeb開発で必要な知識が増えるような交流会も、参加もしくは実施できればと考えています。

6
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?