gpt4 book ai didi

ruby-on-rails - 使用 Rails.cache.write 设置原始值

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

我正在尝试将整个 response.body 保存到 memcached。我是这样做的:

Rails.cache.write(request.headers['HTTP_X_MEMCACHED_KEY'], response.body)

问题是它在值前添加了一些垃圾:

o: ActiveSupport::Cache::Entry  :@compressedF:@expires_in0:@created_atf1355928410.584484:@value"GsI";s<!DOCTYPE html>...

我试图将 :raw => true 传递给 Rails.cache.write,但它返回 false 并且没有将值放入 memcached。我认为它失败是因为 response.body 没有正确转义。

我也试过这种方式:

Rails.cache.write(request.headers['HTTP_X_MEMCACHED_KEY'], Marshal.dump(response.body), :raw => true)

有效,但值中仍有一些垃圾:

I"fD<!DOCTYPE html>...

如何将干净的值放入 memcached?

最佳答案

由于 response.body 中未转义的 unicode 字符,memcached 似乎无法缓存数据。

现在我将 response.body.bytes.to_a.map(&:chr).join 作为值传递,它工作正常,但我仍然想知道它是否是最好的解决方案。

关于ruby-on-rails - 使用 Rails.cache.write 设置原始值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13955160/

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