【问题标题】:channelUrl error in Firefox addon while trying SE OAuth init尝试 SE OAuth 初始化时 Firefox 插件中的 channelUrl 错误
【发布时间】:2015-02-15 18:55:40
【问题描述】:

我正在尝试使用客户端 OAuth 流程开发一个使用 StackExchange API 的 Firefox 插件。我只是使用 StackApps 文档中的示例代码:

SE.init({ 
    clientId: 4267, 
    key: '8p1pDgmKlR6m6hUn80n21Q((', 
    channelUrl: 'https://api.stackexchange.com/docs/proxy',
    complete: function(data) { 
        $('#login-button')
            .removeAttr('disabled')
            .text('Run Example With Version '+data.version); 
    }
});

...

尝试运行插件时,我在控制台中收到以下错误:

uncaught exception: channelUrl must be under the current domain

我尝试将域更改为其他内容,将其与我在 StackApps.com 注册的应用程序中的 OAuth Domain 值匹配。我还尝试禁用Desktop Application OAuth Redirect Uri。一切都无济于事。

那么,我怎样才能摆脱这个错误呢? Firefox 扩展是否使用自己的隐藏 oauth 域?

【问题讨论】:

    标签: javascript oauth-2.0 firefox-addon


    【解决方案1】:

    我通过一些实验找到了答案。

    原来Firefox扩展的channelUrl应该是一个内部资源文件,格式如下:

    channelUrl = 'resource://<enstenion_id>-at-jetpack/<extension_name>/data/blank.html'

    【讨论】:

    • 非常感谢您分享您的解决方案!
    • 你能分享用于stackapp的OAuth域吗? @lionstar
    猜你喜欢
    • 1970-01-01
    • 2016-09-13
    • 1970-01-01
    • 2019-07-25
    • 1970-01-01
    • 1970-01-01
    • 2021-04-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多