我试图使用使用3Scale API管理的nodejs设置原型API。

我已经能够找到他们的插件集成代码,如下所示:

var ThreeScale = require('3scale').Client;
// keep your provider key secret
var client = new ThreeScale("X");

// you will usually obtain app_id and app_key from request params
client.authrep({ app_id: "Y",
                 app_key: "Z" }, function(response){
  if(response.is_success()) {
    // continue
  } else {
    throw new Error("not authorized " + response.error_message);
  }
});


作为服务器模块的一部分,这对我来说很有意义。但是,我不确定客户凭证在该等式中的位置。

当客户端指向您的应用程序时,我看到了它,这是该应用程序的密码...但是实际客户端的用户名/密码呢?在哪里检查?

我觉得我没有掌握他们的体系结构(可能是因为这是我的第一个真实节点项目,而且绝对是我第一次使用3Scale)...

此外,客户的要求是什么样的?

最佳答案

在3scale系统中,app_id和app_key(在此身份验证方法中)表示用户(即开发者)的凭据。这是由于每个用户可以拥有一个以上的应用程序,而一个应用程序仅属于一个用户,因此您不需要用户凭据。在3scale系统端检查凭据,如果授权,它们将报告使用情况并将调用转发给您的API。

provider_key标识您的帐户(API所有者),并且您必须对其保密(如果有人得到了,他们可以冒充您)。

您是否已经检查了3scale的支持站点?关于系统体系结构,有很多有用的信息,一些关于集成的教程,等等。
您可以在此处检查它们:http://support.3scale.net

顺便说一句node.js插件是社区插件。您也可以尝试通过nginx反向代理进行集成。

关于api - 从服务器和客户端的角度来看,如何使用3Scale的`authrep`函数?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16063638/

10-16 19:22