1

のメソッドRack::Sessionと組み合わせて使用​​することはできないようです。これは、セッション ミドルウェアが必要なヘッダーを変更する機会を得る前に発生するためだと思いますが、これは一般的な問題のようです。セッションミドルウェアを書き直さずにこれを機能させる方法はありますか? 私は明らかな何かを見落としていますか?async_sinatraarouteasync_sinatra:async

require "sinatra/async"

class AsyncTest < Sinatra::Base
  register Sinatra::Async

  enable :sessions

  aget "/foo" do
    session[:message] = "Hello World!"
    body "foo: #{session[:message]}"
  end

  aget "/bar" do
    body "bar: #{session[:message]}"
  end

  run! if app_file == $0
end

Visiting /foorenders "foo: Hello World!" 期待どおりですが、/bar「bar:」をレンダリングし、街中に眉をひそめます。何をすべきか?これは単に不可能ですか?

4

1 に答える 1