我已经在Eclipse Helios上安装了EGit插件,我正在尝试将它与我的GitHub帐户一起使用,但是当我尝试配置它时,我收到"Auth Failed"错误.
我一直在谷歌搜索它,但没有运气......这似乎是我的密码问题,但AFAIK EGit正在寻找正确的地方(/home/user/.ssh/id_rsa),我在连接ssh或git控制台客户端没有问题.
一些博客说这是URI和Egit解析器的问题,但我还没有找到解决方案.
我正在尝试使用Passport在我的应用程序中实现摘要身份验证,但我遇到了以下问题,无法弄清楚如何解决它.
当我按如下方式卷曲我的"受保护的网址"时,我得到一个400 - 错误的请求响应:
$curl --user test:123456 --digest http://localhost:3000/users
Run Code Online (Sandbox Code Playgroud)
您可以在最后找到完整的卷曲请求/响应.
我试图使用自定义回调,passport.authenticate以查看它得到了什么:
users.get('/', function(req, res, next) {
passport.authenticate('digest', {session: false}, function(err, user, info) {
console.log('Err: %s', err);
console.log('User: %s', user);
console.log('Info: %s', info);
})(req, res, next);
}, otherMiddleware);
Run Code Online (Sandbox Code Playgroud)
结果是:
Err: null
User: false
Info: Digest realm="Users", nonce="YTFqg2z17mYU039DvuLzONN48F0q1Xmk", qop="auth"
Run Code Online (Sandbox Code Playgroud)
所以我认为用户没有被正确发送,但无法弄清楚原因.
我已将护照配置为使用摘要认证,如下所示:
index.js:
// ...
var passport = require('passport);
var usersRoute = require('./routes/users');
// ...
app.use(passport.initialize());
app.use('/users', usersRoute);
Run Code Online (Sandbox Code Playgroud)
users.js
var passport = require('passport'),
DigestStrategy = require('passport-http').DigestStrategy,
User = …Run Code Online (Sandbox Code Playgroud)