2016-12-05 3 views
2

Gibt es eine Möglichkeit, dass ich die Anfrage Route in Sinatra bekommen kann. Zum Beispiel habe ich eine Route:Get Sinatra Anfrage Route/Pfad

get "/:id/post" do 
    # whatever 
end 

Wenn ich getroffen, dass Endpunkt, zum Beispiel „/ abc/post“, mag ich die Route protokollieren: "/:id/post", statt "/abc/post", die ich über request.path_info bekommen .

Jede Hilfe wird geschätzt.

Antwort

4

Der Router stores the matched route in @env["sinatra.route"], so können Sie dies tun:

get '/:id/post' do 
    logger.info "Route: #{@env["sinatra.route"]}" 
    # ... 
end 

Dieses log wird:

I, [2016-12-05T10:59:36.678467 #35615] INFO -- : Route: GET /:id/post 
+0

Vielen Dank für Ihre Informationen! –