0

我试图通过将 Rails 4 API 设为OAuth2 Provider来保护它。

添加了 gem Mongoid '4.0.0'(来自 Git Repo 的主分支)以使其与 Rails 4 一起使用。

现在我希望使用Doorkeeper gem 使 API 成为 OAuth2 提供者。我猜 Doorkeeper 不支持 Mongoid 4(来源:https ://github.com/applicake/doorkeeper/issues/224 )

此外,我不能使用 Mongoid 3.1.2,因为这在 Rails 4 中不起作用。

我不喜欢使用 gem 'oauth-plugin',因为它注入了太多的样板代码。

请建议,我能做些什么来让它工作吗?

先感谢您!:-)

4

1 回答 1

2

Moped 的 BSON 已从 bson gem 2.0 中删除,但您可以手动添加。

创建 config/initializers/bson/object_id.rb 到文件中添加:

module Moped
  module BSON
    ObjectId = ::BSON::ObjectId

    class Document < Hash
      class << self
        def deserialize(io, document = new)
          __bson_load__(io, document)
        end

        def serialize(document, io = "")
          document.__bson_dump__(io)
        end
      end
    end
  end
end

链接到原始文章

于 2013-11-18T01:42:07.947 回答