我需要从OAuth1.0迁移到OAuth2.0。我的前端在AngularJS中,后端在Nodejs中。
<div class="container-fluid">
<h2>Quickbooks!</h2>
<div>
Connect to quickbooks!
<connect-to-quickbooks></connect-to-quickbooks>
</div>
</div>
这是我的angularJs指令:
'use strict';
angular.module('flexFunds.flexManager.quickbooks')
.directive('connectToQuickbooks', function($window) {
return {
restrict: 'E',
template: "<ipp:connectToIntuit></ipp:connectToIntuit>",
link: function(scope) {
var script = $window.document.createElement("script");
script.type = "text/javascript";
script.src = "//js.appcenter.intuit.com/Content/IA/intuit.ipp.anywhere.js";
script.onload = function () {
scope.$emit('intuitjs:loaded');
};
$window.document.body.appendChild(script);
scope.$on('intuitjs:loaded', function (evt) {
console.log(evt);
$window.intuit.ipp.anywhere.setup({ grantUrl: '/' });
});
}
}
});
现在,通过单击显示的按钮
甜,现在我可以手动登录了,但是仍然不允许我访问我的应用。无论如何,这不是我想要的。
我的一些问题:
NodeJS在哪里发挥作用?这里是AngularJS。你们将如何去做呢?
如何从后端获取所有需要的密钥?我希望将令牌也保存到数据库中,或者与护照一起保存,如果有人可以指出有关此主题的一些很好的资源,那将不胜感激。
我可以摆脱quickbooks默认按钮模板并启用某种功能吗?例如,用于将请求发送到后端以获取发票的按钮。意味着这个新按钮必须验证用户身份,并且当然要提供其功能。
编辑: 按照mcohen01和minimul的教程示例(下面的链接),我现在更好地了解了该过程的工作方式。但是如何使angularJS从NodeJS服务器请求令牌,以及我的服务器如何重定向角度JS。 任何人都可以解释一下,也许序列图或示例会很有帮助。谢谢。
https://github.com/mcohen01/node-quickbooks/tree/master/oauth2example https://minimul.com/connect-to-quickbooks-angular-directive.html