簡體   English   中英

不允許使用機架/ Sinatra方法

[英]Rack/Sinatra Method Not Allowed

我正在使用Sinatra開發一個簡單的Web應用程序,並使用rack作為中間件,因此有一個config.ru 要運行該應用程序,我使用shotgun config.ru

當應用程序執行GET請求時,我沒有問題。 但是我的應用程序有幾個POST請求,當我通過POST方法提交表單時,出現了這個奇怪的錯誤:

Method Not Allowed

以下是我的config.ru的內容:

require "rack"
require 'rack/contrib/try_static'
require File.expand_path("app", File.dirname(__FILE__))

use Rack::TryStatic, :root => File.join(App::SETTINGS.source, App::SETTINGS.site.config['destination']), :urls => %w[/]

run App

知道什么可以解決問題嗎?

謝謝

以下內容不會回復帖子:

get '/hi' do
 "Hello World!"
end

您很有可能需要執行以下操作:

post '/hi' do
  # do post stuff
end

我解決了這個問題。 rack有問題。

我更換了

use Rack::TryStatic, 
    :root => File.join(App::SETTINGS.source, App::SETTINGS.site.config['destination']), 
    :urls => %w[/]

與:

use Rack::Static,
    :urls => ["/#{App::SETTINGS.site.config['destination']}"],
    :root => File.join(App::SETTINGS.source, App::SETTINGS.site.config['destination'])

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM