Creating a dummy API using Sinatra.
Nov 19, 2020
Install Sinatra gem
gem install sinatra
api_app.rb
require 'sinatra'
require 'json'get '/' do
'Hello world!'
endpost '/sign_in', provides: ['json'] do
request.body.rewind
request_payload = JSON.parse(request.body.read)
if request_payload['username'] == 'email@domain.com' && request_payload['password'] == 's3cr3t'
{data: {access_token: '2y7348y43tj04fdafdsfds'}, message: nil, success: true}.to_json
else
{data: nil, message: "Unauthorized", success: false}.to_json
end
end
Starting the app
ruby api_app.rb -o 0.0.0.0
The -o 0.0.0.0 allows you to access the app over the local network. It’s similar to rails s -b 0.0.0.0
What next
Here a challenge. Use SQLite to store data.