gpt4 book ai didi

ruby - 由于 NoMethodError 无法启动 Rack 服务器

转载 作者:数据小太阳 更新时间:2023-10-29 08:43:05 25 4
gpt4 key购买 nike

我正在编写一个小型 Sinatra 应用程序(Facebook Messenger 机器人),所以我正在使用 facebook-messenger gem。这是我的 config.ru 中的内容:

require './app'
require_relative 'bot'

require 'facebook/messenger'
include Facebook::Messenger


map '/webhook' do
run Sinatra::Application
run Facebook::Messenger::Server
end

但是每当我尝试使用 rackup -p 5000 命令启动我的服务器时,它都会返回以下错误:

/chatbot/config.ru:5:in `block in <main>': undefined method `include' for #<Rack::Builder:0x007feb32926e70> (NoMethodError)

这个错误的原因是什么?

最佳答案

config.ru 文件的内容由 Rack::Builder 处理,而不是由 Ruby 本身处理。具体来说,包含行在 Rack::Builder 的上下文中进行评估,并为您提供未定义的方法。根据其余代码,您不需要包含它,因为您使用内部模块/类的完整路径

run Facebook::Messenger::Server

如果您确实需要包含它,请在单独的 (ruby) 文件中执行此操作,并在 config.ru 中要求该文件。

关于ruby - 由于 NoMethodError 无法启动 Rack 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45901826/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com