我想将json对象发送到另一台服务器,与我的网站无关。
我使用的API要求用户(在这种情况下为用户x)登录其服务以获得授权,以便用户x可以操作用户x的列表。但是,其他用户无法写入x列表。因此,用户需要请求将项目添加到x列表中,然后登录到x帐户的服务器可以将其添加到x列表中。请参阅下图。
我正在使用node / express.js作为用户端的服务器。但是,我不知道我应该为服务器使用什么,他们唯一的工作就是接收请求并写入x的列表。你能否提供一些关于我如何能达到这样的目标的指导?
谢谢!
答案 0 :(得分:0)
这里有两个选项:
您必须实时刷新连接用户的列表。 要实现此目的,您应使用:WebSockets(例如socket.io)或LongPolling。
在第二个选项中,您不必实时刷新列表。你只需使用快递。接受数据并刷新列表服务器端。
验证:
了解了Web套接字的本质后,您可以自由地构建任何逻辑,包括身份验证/授权。执行大量身份验证的伟大图书馆是passport.js。
服务器端非常快速和抽象的例子:
socket.on('auth', function(data) {
const vendor = data.vendor,
token = data.id
switch(vendor) {
/*
Here you grab through some social API user social id
and save it to database
*/
}
/* set socket as logged in */
socket.logged = true
/* or even save user object */
socket.user = { vendor, token }
})
下次需要授权用户时,请检查:
socket.on('mustBeAuthorized', function() {
if(socket.logged || socket.user) {
/* Continue your logic*/
}
})