我正在尝试使用我的 node.js 服务器访问 Google 身份验证 API,但我只是找不到方法。基本上,我希望用户到达我的登录页面,单击身份验证按钮,然后服务器将他重定向到 Google API,用户允许我的应用访问他的数据,然后 Google API 将用户重定向到我的网站授权令牌。
我已经设置了 oauth2 所需的 url,它似乎可以工作(如果我将它粘贴到我的网络浏览器中,它会将我重定向到谷歌授权页面)。我看到这篇文章似乎回答了我的问题,但我不知道如何处理快速代码部分。
这是我正在使用的代码:
https.get(options, function(res) {
var retrieved_data = '';
res.on('data', function(data) { retrieved_data += data; });
res.on('end', function() {
// FIXME
client_response.writeHead(302, {"Content-Type" : "text/plain", "Location" : res.headers.location});
client_response.end(retrieved_data);
});
});
但是此方法在我的客户端页面上返回错误(由我的 ajax 请求的错误字段引发)。如果我在没有“位置”信息的情况下将 HTTP 代码更改为 200,它会在客户端上显示一个“临时移动”页面,并带有一个将我重定向到 Google API 授权页面的按钮。
有什么建议吗?