2017-12-13 7 views
0

これはちょっと変わった質問ですが、私はSinatraを使用してカスタムのモッキングライブラリを作成しようとしています。私は図書館が最後に行った依頼を保管できるようにしたいと思っていますが、Sinatraにそうしてもらうのは本当に苦労しています。他の誰かがこの特定の問題に遭遇しましたか?そして、あなたが尋ねる前に、Webmockを使うことは選択肢ではありません。最後にSinatraに最後のリクエストを保存させるにはどうすればいいですか

+1

データベースがありますか? – Anthony

+1

このシナリオではありません。理想的には、要求は単にメモリに格納されるべきです。 – Reck

+1

HTTPはステートレスなので、どこかでリクエストを永続化する必要があります。データベース、ファイル、あなたが望むもの。 – Anthony

答えて

0

私はそれを理解しました。私はちょうどそれを追跡するためにいくつかのラックミドルウェアを書いた。

module MockService 
    class StoreLastRequest 
    def initialize(app) 
     @app = app 
    end 

    def call(env) 
     @@last_request = { method: env['REQUEST_METHOD'], uri: env['REQUEST_URI'] } 
     @app.call(env) 
    end 

    def self.last_request 
     @@last_request 
    end 
    end 
end 
関連する問題