我如何找到Mediawiki OAUTH回调URL(节点护照- Mediawiki - OAUTH)



我正在尝试让我的节点网页对我们内部的mediawiki系统进行身份验证,而不是使用节点passport-mediawiki-oauth。

认为这一切都是正确的设置,我得到远被转发到mediawiki登录页面,提供登录细节,然后得到一个"未知的URL, E003"从mediawiki(在屏幕上,而不是返回代码)。我的问题是,我不知道是什么导致了这个问题。

我已经尝试设置callbackURL (http://127.0.0.1:30005/auth/mediawiki/callback),我已经尝试将其留空以使用默认设置的那个(与上面在mediawiki上的Oauth提案中提供的相同)。

我会进一步调查,但我已经把mediawiki调试,没有信息。我试图找到关于E003问题的信息,没有信息。如果我至少能弄清楚它试图使用什么URL来反馈,看看这是否是问题所在,但我完全卡住了。

passport-mediawiki-oauth的配置为(删除敏感信息):

consumerKey: "xxxxxxxxxxxxxxxxxxxxxxxx",
consumerSecret: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
callbackURL: "http://127.0.0.1:30005/auth/mediawiki/callback",
requestTokenURL: 'http://192.168.0.51:8081/dbfswiki/index.php?title=Special:OAuth/initiate',
accessTokenURL: 'http://192.168.0.51:8081/dbfswiki/index.php?title=Special%3AOAuth%2Ftoken',
userAuthorizationURL: 'http://192.168.0.51:8081/dbfswiki//wiki/Special:OAuth/authorize',
baseURL: "http://192.168.0.51:8081/dbfswiki/index.php/Special:OAuth/authorize"

验证的代码是这样处理的:

passport.use('mediawiki', new MediaWikiStrategy({
        consumerKey: configAuth.mediawikiAuth.consumerKey,
        consumerSecret: configAuth.mediawikiAuth.consumerSecret ,
        callbackURL: configAuth.mediawikiAuth.callbackURL,
        baseURL: configAuth.mediawikiAuth.baseURL
    },
    function(token, tokenSecret, profile, done) {
        User.findOrCreate({ mediawikiGlobalId: profile.id }, function (err, user) {
            return done(err, user);
        });
    }
));

所以前进一步(后退一步)。经过一番摸索,我想我找到了问题所在。我以为是回叫URL出了问题,结果是授权URL出了问题。psport -mediawiki- OAuth似乎已经添加了OAuth两次/dbfswiki/index.php/Special:OAuth/authorization wiki/Special:OAuth/authorization ?oauth_token=&oauth_consumer_key= 449c71620457972e86ef20e083ccb87b在模块代码中修复了这个问题,只面对一个新的问题,我知道得到一个接受框,(应用程序…我想要基本的权利,当我按OK时,我得到一个提示:There is problem with your input

最新更新