Sinatraで問題が発生し、jsonだけでは応答できず、どこにも適切なsinatraドキュメントが見つからず、ほとんどのものが古くなっているようです。
とにかく、ここにコードがあります:
module MemcachedManager
class App < Sinatra::Base
register Sinatra::Contrib
helpers Sinatra::JSON
get '/' do
json({ hello: 'world' })
end
end
end
MemcachedManager::App.run! if __FILE__ == $0
私が得る応答は次のとおりです。
"<!DOCTYPE html PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\" \"http://www.w3.org/TR/REC-html40/loose.dtd\">\n<html><body><p>{\"hello\":\"world\"}</p></body></html>\n"
jsonの部分だけであるはずだったところ。要求しなかったのに、なぜhtmlタグをレンダリングするのですか?