我在Apigee上创建了一个新帐户。我可以成功运行沙盒应用程序,但是我在设置新应用程序时遇到了困难。
我在管理面板中创建了新应用并下载了SDK(Javascript)。然而,new-project-template包含沙箱的代码(不是我的新应用程序)。当我更改index.html中的代码以反映我的新应用并尝试运行它时,我得到了"失败"打回来。此外,我在管理面板中看到"监控"对于这个应用程序。
如何正确设置新应用?
谢谢你, -Russ
答案 0 :(得分:2)
我认为您遇到了问题,因为您的新应用中的用户,角色和权限设置不正确。尝试访问App Services的用户没有该集合的权限,因此无法对其进行查询。见https://apigee.com/docs/app-services/content/managing-access-defining-permission-rules。 您可以创建一个对该集合具有权限的新角色,然后根据需要将该角色分配给用户。或者,您可以将集合的权限添加到Guest角色。如果将权限添加到Guest角色,则无需将角色分配给用户。
答案 1 :(得分:1)
如果您以前使用沙盒应用程序,则它具有全部权限(Access上的/ **)。当您创建新应用时,它没有此功能。因此,您可以像Mike Mallow建议的那样添加所述权限,或者,您可以开始使用oauth来允许您的应用用户登录。一旦他们登录,他们将获得一个可用于将来调用API的令牌。本节将更详细地解释这一点:
http://apigee.com/docs/app-services/content/app-security
此部分介绍如何将代码添加到您的应用中,以便您的用户可以登录并获取令牌:
http://apigee.com/docs/app-services/content/authenticating-users-and-application-clients
本节介绍如何使用令牌(但是,如果您使用的是SDK,则会为您处理该部分):
http://apigee.com/docs/app-services/content/authenticating-api-requests
答案 2 :(得分:0)
App Services(API BaaS)中的每个应用程序都有自己的一组API密钥(client_id,client_secret)。您可能也需要更新这些错误,这是导致错误的原因。
您可以在"入门"上找到这些键。新应用的标签页。 The docs解释了如何在应用中更新这些内容。
请记住,服务器应用程序凭据不应在任何生产环境中在客户端(如index.html)上使用;如果有人要了解这些,他们可以不受限制地访问您的应用程序。相反,请查看实现user-based authentication并限制将应用级(或组织级)凭据用于服务器端服务。