gpt4 book ai didi

node.js - Etherpad:连接身份验证的最佳方式

转载 作者:太空宇宙 更新时间:2023-11-04 01:08:14 29 4
gpt4 key购买 nike

我正在为 etherpad 制作一个插件,用于检查用户是否经过身份验证。如果不是,则显示只读。我到目前为止:

var eejs = require('ep_etherpad-lite/node/eejs');
var readOnlyManager = require("ep_etherpad-lite/node/db/ReadOnlyManager");

exports.route = function(hook_name, args, cb){
args.app.get('/p/:pad', function(req, res){
if(req.params.pad.indexOf('r.') === 0){
res.send(eejs.require("ep_etherpad-lite/templates/pad.html", {req: req}));
} else {
if(req.session.user){
res.send(eejs.require("ep_etherpad-lite/templates/pad.html", {req: req}));
} else {
readOnlyManager.getReadOnlyId(req.params.pad, function(err, readonlyID){
res.redirect('/p/'+readonlyID);
});
}
}
});
}

exports.logout = function(hook_name, args, cb){
args.app.get('/logout', function(req, res){
req.session.destroy(function(){
res.redirect('/');
});
});
}

但我无法使用帖子路由来让我自己的用户登录。我怎样才能根据请求进行一般身份验证,比如说当我访问/login 时?

最佳答案

我在 Etherpad 中编写了很多身份验证机制,但那是几年前的事了,我不知道从那以后它发生了多少变化。

您需要的 API 端点以及有关身份验证如何工作的文档可在 Etherpad documentation 中找到。特别是身份验证在 authentication documentation 中讨论.

很难从你的问题中看出,但看起来你想在/login 有某种登录页面?如果是这样,请查看 Etherpad 如何实现基本身份验证,并通过在/login 创建新的快速端点来调整它

有各种插件(包括我开发的插件)可用于创建新的快速端点,an example is available in the ep_email_notifications Etherpad plugin

我从你的问题中得到了正确的答案吗?

关于node.js - Etherpad:连接身份验证的最佳方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20818727/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com