使用slack-api gem的导轨中的螺纹安全性

时间:2015-06-28 19:17:47

标签: ruby-on-rails ruby thread-safety slack-api

我刚开始使用rails。在我的应用程序中,我必须访问Slack apis,所以我使用了slack-api gem。配置的方式是

Slack.configure do |config|
  config.token = "token"
end

我想知道,因为令牌是在类级别配置的' Slack',会导致任何不一致的行为吗?一个请求可能将其设置为值A,在完成之前,另一个请求可以将其设置为值B.

1 个答案:

答案 0 :(得分:1)

虽然Ruby Web框架通常是单线程的,但情况并非总是如此。因此,如果令牌在多个请求中不同,很可能会导致问题,从长远来看很难推理或成为问题。

尝试更新的gem https://github.com/dblock/slack-ruby-client,它将在初始化程序中使用一个标记,即。 animationImagesSlack::Web::Client.new(token: 'token'),应该完全避免这个问题。