Допустим возникла задача написать простой RESTful api сервер для iOS/Android устройств.
Что дано:
База данных интернет-магазина (базу трогать нельзя)
Инструментарий:
Sinatra, mysql2, json
Количество строк: 47
Время: ~ 5 мин
# Simple api server require 'rubygems' require 'sinatra' require 'mysql2' require 'json' db = Mysql2::Client.new( :host => 'localhost', :username => 'root', :password => 'root', :database => 'example', :encoding => 'utf8' ) before do content_type 'application/json' end # главная страница get '/' do { :app => 'simple api server', :version => 'v.01', :date => Time.new }.to_json end # вернет список категорий get '/categories' do db.query("SELECT * FROM `s_categories`", :as => :json) end # вернет список товаров из категории get '/categories/:id' do db.query("SELECT * FROM `s_products` LEFT JOIN `s_products_categories` ON `s_products`.`id` = `s_products_categories`.`product_id` LEFT JOIN `s_categories` ON `s_products_categories`.`category_id` = `s_categories`.`id` WHERE `s_categories`.`id` = 1 LIMIT 10", :as => :json) end # вернет список товаров get '/products' do db.query("SELECT * FROM `s_products` LIMIT 10", :as => :json) end # вернет товар get '/products/:id' do db.query("SELECT * FROM `s_products` WHERE id = #{params[:id]}", :as => :json) end
С рождеством
ссылка на оригинал статьи http://habrahabr.ru/post/164941/
Добавить комментарий