问题描述
我正在尝试创建一个 aibo 可链接的应用程序。我有一个 node.js/express 应用程序正在运行,当我收到对“/”的请求时,我使用适当的参数重定向到 aibo 身份验证端点。当我访问我的站点时,它会正确显示 SONY 登录页面,我可以使用我的电子邮件和密码登录,但它会将我带到 myaibo.aibo.com 站点,而不是重定向到我的“/auth”端点。
这是我正在做的事情的一小段:
const CLIENT_ID = process.env.AIBO_CLIENT_ID;
const CLIENT_SECRET = process.env.AIBO_CLIENT_SECRET;
const REDIRECT_URI= 'https://aibo.jonfleming.net/auth';
app.get('/',(req,res,next) => {
if(!req.session.authenticated) {
req.session.state = randomGenerate(12);
const url = `https://myaibo.aibo.com/account_link.html?state=${req.session.state}&` +
`client_id=${CLIENT_ID}&scope=pub&redirect_uri=${REDIRECT_URI}&response_type=code`;
res.redirect(url);
} else {
next();
}
});
app.get('/auth',res) => {
const code = req.query.code;
const state = req.query.state;
if (state === req.session.state) {
// request access token
// get deviceid
// update header
req.session.authenticated = true;
res.send('Connected');
}
});
'/auth' 端点永远不会被命中。
我还尝试显示一个可点击的链接来代替 res.redirect(url)。
res.send(`<html><body><a href="${url}">Sign In</a></body></html>`);
点击链接的结果相同。它会将我带到登录页面,但永远不会重定向回我的应用。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)