SinatraっていうかRackのミドルウェアでありました。 sudo gem install rack_csrf# app.rb require 'rubygems' require 'sinatra' require 'rack/csrf' get '/' do @msg = 'Hello World' erb :index end post '/' do @msg = 'Hello CSRF' erb :index end configure do set :app_file, __FILE__ use Rack::Session::Cookie, :secret => 'change me' use Rack::Csrf, :raise => true end helpers do def csrf_token Rack::Csrf.csrf_token(env) end def
このウェブサイトは販売用です! twiwt.org は、あなたがお探しの情報の全ての最新かつ最適なソースです。一般トピックからここから検索できる内容は、twiwt.orgが全てとなります。あなたがお探しの内容が見つかることを願っています!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Railsにおけるrestful_authenticationやMerbのビルトイン認証機構に比べると、Sinatraには「とりあえずこれを使っておけ」というような認証ライブラリが無いような気がします。強いて言えばRack::Auth::Basicかな。ちょっと機能不足のように感じます。 という事で、Sinatraで使える認証用ライブラリをリストアップ。 Rack::Auth::Basic Basic認証をする。 Rack::Auth::Digest 同様にDigest認証を行う。 Rack::Auth::OpenID OpenIDを使って認証。ruby-openidが必要。 Rack::Auth::OpenIDAuth 同
前回は、Sinatraバージョン1.0の概要を公式ドキュメントを手がかりとして、Sinatraを紹介しました。そして最後に、「Sinatraの先には、まだ地図がない」と言及しました。 今回は、「実世界のSinatra」と題して、実際にSinatraを利用して開発していくうえでの、筆者自身のロードマップを示していきます。 Sinatraとはいったい何か いきなりですが、Sinatraとはいったい何なのでしょう。 これは根本的な問いになりますが、Sinatraで開発を進める前に、ここをしっかり考えることが重要であると筆者は考えます。 素直に考えるならば、Sinatraはもちろん、広義のWebアプリケーションフレームワークの一つである、と答えられるでしょう。アプリケーションフレームワークのそもそもの定義が、「共通部分を再利用可能にし、開発を助けるもの」であるならば、Sinatraもこの例に
This document discusses various web frameworks and tools including Sinatra, Padrino, CoffeeScript, Sass, and Sprockets. It summarizes Padrino as a modular web framework built on Sinatra that aims to provide more features out of the box compared to Sinatra. Padrino includes generators to create projects, controllers, models and other components. It supports features like modular design, multiple ap
注:rack 1.3.3以前だと落ちます。rack 1.3.4以上にアップデートしましょう。 Sinatra 1.3でstreamヘルパーが追加された。 require "rubygems" require "sinatra" get '/' do stream do |out| out << "It's gonna be legen -\n" sleep 0.5 out << " (wait for it) \n" sleep 1 out << "- dary!\n" end end get '/normal' do sleep 1.2 "normally response" end 全部の処理が終わるまで待って一気にレスポンスを返すのではなく、out << "string"のように逐次レスポンスを返す。なお、これの実装はRails 3.1で追加されたものやPHPのデフォルトの挙動、Tw
最近は仕事でSinatraアプリを書いたりしているので、Sinatraアプリを動かすためにはどのHTTPサーバを使うのがベストなのかが気になっている。(先に結論を書いておくけれど、どれがベスト、という唯一の選択肢は今のところありません。適材適所です。) SinatraはRackの上に構築されているので、Rackに対応したHTTPサーバーを使って動かす事になるのだが、この数がやたらと多く、どれを使えばいいのか迷う。代表的なものを挙げただけでも、WebRick, Mongrel, Thin, Unicorn, Passenger(Apacheとかに組み込んで使うやつ), FastCGI, (普通の)CGI、これぐらいは選択肢がある(いくつかHTTPサーバじゃない物も混ざっているが、Rackが対応してるという点は共通している)。 WebRickはそもそもパフォーマンスに重点を置いていないし、Mo
このサイトを Sinatra で書き直した。 もともと Rails で書かれていたのだが、この規模のサイトに使うには Rails はいかにも重量級すぎるので。 Sinatra ならば 1 ファイルで完結する。 Sinatra で開発する時に、 O/R マッピングには Sequel とか DataMapper とかが使われることが多い印象があるのだが、今回は ActiveRecord3 を使ってみた。 ActiveRecord3 はメソッドチェインでクエリを組み立てることが出来て非常に便利だし、 Rails3 でこのサイトを作った時のコードを使い回せる。 従来では「Rails を使わない理由」の中で最も大きなものに「ActiveRecord と密接に接合しており他の DBI を使いたくても使えない」というものがあったと思うが(つまりそれだけクソだった)、 ActiveRecord3 は Ru
A Backbone.js demo app (Sinatra Backend) Oct 16 2010 In this article, I will walk thru some simple steps to get a demo app up and running with Backbone.js and Sinatra on Heroku. A few days ago I came across an interesting link on Hacker News. This link led me to a delightful discovery, Backbone.js. Backbone is a MVc where c stands for Collections. More info here. Onto the demo app. The idea is to
研究室の後輩にSinatraとhamlとjQueryを教えるために作ったテンプレートについて、ここにも書いておく ソースコード https://github.com/shokai/sinatra-template 実際動いているもの http://masui.sfc.keio.ac.jp/sinatra-template/ git clone git://github.com/shokai/sinatra-template.git ■Sinatraを何に使うか Sinatra+haml+jQueryが便利。 Railsと似てるけど、ちょっと違う。 個人的には Rails → HTMLのページをいっぱい作るのに便利 Sinatra → 画面遷移あまりしなくて、同じURLのままjsonのAPIをjQueryのajaxで取得して動的に表示を変えるwebページを作るのには便利 に感じる。 でもSi
Introduction What is Sinatra? Sinatra is a Domain Specific Language(DSL) for quickly creating web-applications in ruby. It keeps a minimal feature set, leaving the developer to use the tools that best suit them and their application. Installation The simplest way to obtain Sinatra is through rubygems $ sudo gem install sinatra Sample App Sinatra is installed and you’re done eating cake, how about
第31回に続いて、今回はMongoDBをRubyから使う方法をご紹介します。 MongoDBをRubyから使うためのライブラリ MongoDBをRubyから使うには、以下のライブラリ等を利用する必要があります。 Ruby driver for MongoDB [GitHub, チュートリアル] RubyからMongoDBを使う上で基本となるのが、公式のRubyドライバです。 MongoDBのほぼ全機能にアクセスできるため、複雑なことをしたいときには頼りになるでしょう。後述する他のライブラリも内部ではこのドライバを使っています。 ドキュメントをオブジェクトにマッピングしてActiveRecordライクに扱う、オブジェクトマッパーの機能を提供するライブラリもあります。今回は代表的なものを2つご紹介します。 MongoMapper [GitHub, 作者による紹介] 比較的ActiveRecor
Document Data Structure in MongoDB Express MongoDB lets you easily store structured and unstructured data in a flexible and dynamic database schema. It supports CRUD operations on complex data objects using JSON as the main data type. Its an open source solution so it may not be as robust or well supported as commercial management tools. However it is easy to deploy and works well for most use cas
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く