Eric-Guo / wechat

API, command and message handling for WeChat in Rails

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Psych::BadAlias (Unknown alias: default)

otorain opened this issue · comments

问题描述

在处理微信的回调时报这个错,ruby-3.0.1 没有这个问题。google 后好像跟 YAML 的别名有关,将 gem 下载下来,把所有YAML.load方法调用到的地方添加了aliases: true这个 option 后就可以了。修改后的代码提交了 PR

环境

ruby: 3.1.0
rails: 7.0.2

报错详细信息

Psych::BadAlias (Unknown alias: default):

app/controllers/wechats_controller.rb:4:in `<class:WechatsController>'
app/controllers/wechats_controller.rb:3:in `<main>'
app/middlewares/case_converter_middleware.rb:38:in `call'

image

看 ruby 3.1.0 的升级内容发现是由于 psych 这个 gem 升级后导致的,临时的解决方案是将这个 gem 降级为 '3.3.2' 版本,具体操作在 Gemfile 里边添加:

gem 'psych', "3.3.2"

然后运行 bundle i

Release v15.1 to fix