当我运行WEBrick服务器的实例并将我的浏览器指向localhost:2000 / so_question时,服务器会抛出以下错误: 一世。找不到ERROR /some_image.jpg。 II。找不到错误/jquery.min.js.
示例代码:
require 'webrick'; include WEBrick
s = HTTPServer.new Port: 2000
class SoQuestion < HTTPServlet::AbstractServlet
def do_GET req, resp
resp.status = 200
resp['Content-Type'] = 'text/html'
resp.body = prep_body
end
def prep_body
body = %(
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
)
body << '<p>Hello, world!</p>'
body << "<img src='some_image.jpg'>"
body << "<script src='jquery.min.js'></script>"
body << '</body></html>'
end
end
s.mount '/so_question', SoQuestion
trap('INT'){s.shutdown}
s.start
如何解决这些错误? Plz,建议一个纯Ruby解决方案(没有gems,plz)。
感谢。
答案 0 :(得分:1)
您需要创建一个挂载点来提供静态文件。
将此行放在s.mount "/so_question"
s.mount "/", WEBrick::HTTPServlet::FileHandler, './'
然后Webrick将在./
basedir