如何修复“无法读取属性‘_links’(未定义)”

我试图在 Electron 桌面应用的浏览器窗口中加载我的论坛。但窗口显示为空白,并且不断报错:Cannot read property '_links' of undefined。我发现在本地桌面窗口中尝试加载任何 Discourse 站点时,都会出现同样的问题。

有什么方法可以修复这个问题吗?任何帮助都将不胜感激。

我为什么尝试在 Electron 窗口中加载应用

我试图获取一个用户特定的 API 密钥,正如这里所描述的:https://meta.discourse.org/t/user-api-keys-specification/48536。我已经进展到需要提供 Discourse 用于在负载中发送编码密钥的重定向地址这一步。但是,由于这是一个桌面应用,我没有可用的 URL 作为重定向地址。我看到的一种解决方案是在本地应用窗口中加载站点的授权页面,然后我可以检测其中的变化。

通常情况下,在应用浏览器窗口中加载外部网站很简单——基本上只需调用 window.loadUrl('https://site.com')。大多数网站都能正常加载。

但在这里,出现了错误,窗口中显示的是空白页面。


以下是我在 Discourse 站点(我认为是任何 Discourse 站点,因为我也测试了加载 meta.discourse.org,结果相同,可能与 jQuery 有关)上遇到的完整错误信息:

Uncaught TypeError: Cannot read property '_links' of undefined        ember_jquery-36a231…6acc1076ef4.js:4069 

    at Object.initialize (_application-4d2ba03…7938d06cb3.js:75941)
    at Object.i.initialize (_application-4d2ba03…27938d06cb3.js:7805)
    at _ember_jquery-36a231…acc1076ef4.js:49347
    at i.each (_ember_jquery-36a231…acc1076ef4.js:67724)
    at i.walk (_ember_jquery-36a231…acc1076ef4.js:67638)
    at n.each (_ember_jquery-36a231…acc1076ef4.js:67568)
    at n.topsort (_ember_jquery-36a231…acc1076ef4.js:67576)
    at t._runInitializer (_ember_jquery-36a231…acc1076ef4.js:49361)
    at t.runInstanceInitializers (_ember_jquery-36a231…acc1076ef4.js:49345)
    at t._bootSync (_ember_jquery-36a231…acc1076ef4.js:46813)