首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用express js的http-auth摘要

使用express js的http-auth摘要
EN

Stack Overflow用户
提问于 2017-08-11 15:01:52
回答 1查看 3K关注 0票数 1

我正在用Express JS开发一个API。我想使用http-auth图书馆,我一直在尝试使用摘要身份验证,但我没有能够使用它。这是我的代码:

代码语言:javascript
复制
var app        = require('express')(),
    routes     = require('./routes'),
    bodyParser = require('body-parser'),
    auth       = require('http-auth'); 

app.use(bodyParser.json()); // Soporta json encoded bodies
app.use(bodyParser.urlencoded({ // Soporta encoded bodies
    extended: true
}));

var digest = auth.digest({
    realm: 'prueba',
    file: __dirname + "/usr.pass"
});

app.use(auth.connect(digest));

// Conectamos todas nuestras rutas
app.use('/', routes);

// Levantamos servidor
app.listen(9999, () => {
    Console.log('running');
});

我的usr.pass文件有一行:jdurini:prueba:88bfcf02e7f554f9e9ea350b699bc6a7 (密码是MD5表示por '2315')。

我用邮递员打电话给我的终点站。在本例中,我在localhost:9999上尝试POST方法,每次尝试,它都会转到digest.on('fail')事件。

授权选项卡中,i 使用这些数据

我做错了什么?这是我第一次使用Express,所以任何评论都可能有帮助。

编辑1-8月14日

邮递员中的授权头如下:Digest username="jdurini", realm="prueba", nonce="", uri="/", response="2c01bce3e1980c575fc82e32f9943617", opaque=""。当我填写授权书的表单时,将自动生成此标头:

  • 类型:文摘
  • 用户名:jdurini
  • 领域:prueba
  • 密码:2315

请求中不使用其他标头。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-08-12 10:02:45

原因

看来您的身份验证文件有问题。

溶质

我只是用赫特文摘重新生成身份验证行

代码语言:javascript
复制
htdigest usr.pass prueba jdurini

得到了这样的东西:

代码语言:javascript
复制
jdurini:prueba:546bb2109e9d875fb486bf90a55fdbd6

新版本对我有用。

通知

我想您可能希望将Console.log('running')行更改为小写,因为您的版本没有为我编译。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45638284

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档