邮递员OAuth 2.0请求令牌Xero不返回令牌

时间:2020-08-28 00:49:49

标签: oauth-2.0 postman token

我已经按照帮助说明和Xero设置了Postman,以获取ClientID和Client Secret。当我在Postman中点击“请求令牌”时,显示Xero登录屏幕,而当我登录时,我没有看到Xero OAuth 2.0允许访问屏幕-它直接进入“仪表板”屏幕。

如何使其显示“允许访问”屏幕,以便Xero返回令牌?

1 个答案:

答案 0 :(得分:0)

当这样出错时,很难在Postman中调试。我建议您改用oauth.tools。这个想法有点相似。首先,转到该网站并创建一个新环境:

enter image description here

您可以给它起一个漂亮的名字,例如xero。用Authorization Endpoint填充https://login.xero.com/identity/connect/authorize,用Token Endpoint填充https://identity.xero.com/connect/token

enter image description here

Client标签上,单击+ New client。然后,输入app found in the Xero dev portal中的Client ID。还要设置秘密并打开Code Flow

enter image description here

关闭该模式,然后在Xero开发人员门户中做一件非常重要的事情:对于Xero应用程序,请确保将重定向URI设置为https://oauth.tools/callback/code

enter image description here

然后在OAuth.tools中创建一个新流程:

enter image description here

选择Code Flow

enter image description here

在环境下拉列表中,确保选择了您创建的一个:

enter image description here

Client ID文本组合框中,选择您在环境中创建的组合框。在offline_access列表框中键入scope。按Enter即可创建它。输入openid并按Enter。点击Run按钮:

enter image description here

在Xero登录。此时,您可以直接回到oauth.tools,或者您可能会看到想要的同意屏幕。如果您没有获得同意屏幕,那是因为Xero坚持了您的授权。换句话说,您已经授权了客户端,因此它不会要求您再次执行该操作。要强制它,请从consent下拉列表中选择prompt

enter image description here

然后,再次点击Run,Xero将始终向您显示同意。

如果需要访问令牌,请返回OAuth.tools,然后点击第3步旁边的Redeem Code

enter image description here

在右侧的结果窗格中,您将看到访问令牌,刷新令牌和ID令牌。

enter image description here