我得到了某种奇怪的行为。我sidekiq
用于后台处理。每当我perform_async
继续SidekiqJob
将数据发布到另一个 Rails 应用程序时,我都会得到MultiJson::LoadError
,但是当我创建它的一个实例并调用它时,它就像一个魅力。不知道具体的罪魁祸首是什么。
SidekiqJob.perform_async(:id => blog.id)
(有MultiJSON::LOAD
错误)
SidekiqJob.new.perform(:id => blog.id)
(一切正常)
SidekiqJob
执行方法如下所示:
def perform(params)
body = {'status' => 'COMPLETED', 'results' => Result.find(params['id']).build_results}
HTTParty.post(some_callback_url, :body => body.to_json, :headers => {'Content-Type' => 'application/json'})
end
需要一些方向来解决这个问题。
在请求标头中添加 charset utf-8 可解决问题