I have a simple sinatra application. All I want to do is use it as a wrapper to serve a static HTML file at a specific route. My directory structure looks like this:
/directory
myhtmlfile.html
app.rb
My app.rb
file looks like this:
require 'sinatra'
get '/myspecialroute' do
html :myhtmlfile # i know html is not a method, but this is what I would like to do
end
How can I write this so that I can keep my html file a plain html file but serve it at a special route?
Solution:
Thanks to this, I learned a few different ways to do it:
get '/myspecialroute' do
File.read('myhtmlfile.html')
end
This will open, read, close, then return the file as a string.
Or there is a helper function to make this cleaner:
get '/myspecialroute' do
send_file 'myhtmlfile.html'
end