sinatraのサイトのREADME
http://sinatrarb.com/intro-ja.html
config.ruを用いたクラッシックスタイルアプリケーションの使用 アプリケーションファイルと、 # app.rb require 'sinatra' get '/' do 'Hello world!' end 対応するconfig.ruを書きます。 require './app' run Sinatra::Application
を参考に書いてみた。
同一フォルダに、以下の5つのファイルを作成する。
(foo.rb)
require 'sinatra' get '/foo' do "foo\n" end
(bar.rb)
require 'sinatra' get '/bar' do "bar\n" end
(baz.rb)
require 'sinatra' get '/baz' do "baz\n" end
(not_found.rb)
require 'sinatra' not_found do "Not Found\n" end
(config.ru)
require './foo' require './bar' require './baz' require './not_found' run Sinatra::Application
こんな書き方でいいのだろうか?
実行してみる。
アプリの起動
$ rackup -p 4567 [2021-08-25 19:56:25] INFO WEBrick 1.6.0 [2021-08-25 19:56:25] INFO ruby 2.7.2 (2020-10-01) [x86_64-linux] [2021-08-25 19:56:25] INFO WEBrick::HTTPServer#start: pid=29056 port=4567
curlでアクセスする
$ curl http://localhost:4567/foo foo $ curl http://localhost:4567/bar bar $ curl http://localhost:4567/baz baz $ curl http://localhost:4567/foobar Not Found
Rack
第23回 Rackとは何か(1)Rackの生まれた背景
https://gihyo.jp/dev/serial/01/ruby/0023
第24回 Rackとは何か(2)Rackの使い方
https://gihyo.jp/dev/serial/01/ruby/0024
第25回 Rackとは何か(3)ミドルウェアのすすめ
https://gihyo.jp/dev/serial/01/ruby/0025
Rack入門 概念編 (1/3)
https://qiita.com/nishio-dens/items/e293f15856d849d3862b
Rack入門 Rack Application編 (2/3)
https://qiita.com/nishio-dens/items/852d7604b34d20514a70
Rack入門 Rack Middleware編 (3/3)
https://qiita.com/nishio-dens/items/8011842f50995f46eafe