我正在使用 Rocket Chat (Meteor) 设置自定义 oauth 服务器。几乎一切正常,但是当尝试查询 /oauth/token
端点以让用户登录时,Rocket Chat 失败。
端点没有被触及,所以我猜请求甚至都没有发送。这
error is thrown here消息是 Parse Error
。
我试图阅读 meteor/http
代码,但我没能弄清楚是哪个包导致了这个Parse Error
。
我想不出获取更多信息的正确方法。编辑:我尝试在本地安装 Rocket Chat 但无法重现。此错误仅发生在实时实例上。
知道是什么导致了这个问题,或者我可以采取什么步骤来调试它?
最佳答案
当 URL 不正确但仍是有效 URL 时,可能会出现“解析错误”错误。端点将返回 HTML 而不是有效的 JSON,因此会产生此错误。
示例:您在“my-chat.com”上托管您的 Rocket Chat,并在您自己的开发机器上使用“localhost:3000/oauth”作为您的 oauth 服务器。
这将失败,因为 Rocket Chat 将查询“localhost:3000”,但从 Rocket Chat 的角度来看,localhost 是它托管的服务器,而不是您自己的机器。因此请求将命中 Rocket Chat 本身而不是您的本地开发服务器并产生此错误。
关于http - 如何使用自定义服务在 oauth 期间调试 Rocket Chat 错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55522827/