sinatra が get route /users を見つけられないため、404 が返されました。カスタム エラーを返したい場合は、Haltを参照してください。
エラーをスローする
次のように get /users で 405 を返すことができます。
get "/users" do
halt 405
end
一度に複数の http 動詞をキャッチするには、マルチルートを使用できます
require 'sinatra'
require "sinatra/multi_route"
route :get, :post, '/foo' do
# "GET" or "POST"
p request.env["REQUEST_METHOD"]
end
# Or for module-style applications
class MyApp < Sinatra::Base
register Sinatra::MultiRoute
route :get, :post, '/foo' do
# ...
end
end
ソース
エラー処理
sinatra でエラー コードを処理する場合は、404 エラーを簡単に処理できます。
not_found do
'This is nowhere to be found.'
end
あなたの場合、405 エラーを処理します。
error 405 do
'Access forbidden'
end