Node.js上的Azure Easy API'没有注册'/ api / xxx'的路由?

即使运行简单的Easy API方法,我也遇到了问题。 我不断收到“无路由注册为/ api / userInfo”的响应。

我知道这个位置是正确的,因为我在https://XXXX/dev/wwwroot/api/userInfo.js打开App Service编辑器

该文件也有匿名访问,所以不应该有一个授权问题。 我只是试图从浏览器中的API方法。

为了debugging目的,这个非常简单的方法的代码已经被简化为下面的代码

module.exports = { "get":function(){ console.log('whooohooo'); } }; 

有没有一个设置,我错过了使能调用Easy API的能力? 我一直没有find任何文件,指出,简单的API方法必须明确启用,也不能find任何设置启用它们。

请注意,我没有设置Node.js项目并将其部署到Azure。 我正在使用“开箱即用”应用服务。

我的最终目标是使用一个简单的API方法去获得一个经过validation的用户的电子邮件和名称,但我的努力已经减less到确认我可以调用一个方法。 提前致谢。

更新:我创造了3个不同的移动应用程序服务,没有运气和不同的优势。

应用服务1:
这个移动应用程序项目已有10个月的时间,并在Azure门户中创build。 它在app.js文件中有一个路由行,表明api路由应该存在,但是不起作用。 我不记得我创build它时是否授权了easy apis,但是它具有以下行的事实表明我做了

 mobile.api.import('./api'); 

AppService 2:这个项目是在MobileCenter中使用Xamarin项目的Tables菜单选项创build的。 然后导航到Azure门户,并将SQL db连接到表。 我认为我没有select使用Easy API,但是我被允许创build一个Easy API脚本,然后编辑它。 编辑它后,我意识到该项目没有app.js文件 。 显然通过MobileCenter创build的networking应用程序的创build方式不同。

我select了这个选项是因为它允许您在设置表格时使用“每个用户”标志,并且不需要通过修改表格脚本来手动过滤数据。 显然这不是一个选项,如果你没有通过MobileCenter设置一个应用服务?

应用服务3:我在门户网站上创build了一个全新的项目,并遵循陈亚伦的步骤。 我select了,连接了表格并修改了js文件(我创build了一个名为'testing'的新文件)。 我浏览到https://zzzzapitestzzzz1.scm.azurewebsites.net/api/testing

并得到了可怕的无路线发现错误。 当然,API方法是由匿名访问权限创build的。

在这里输入图像说明 在这里输入图像说明 在这里输入图像说明

基本上,我们可以轻松地在Azure门户中创build一个简单的API。

  1. select您的应用程序服务,然后单击移动菜单中的简易API
  2. 点击Need to configure Easy Tables/Easy APIs ...为您的应用启用移动扩展Need to configure Easy Tables/Easy APIs ...

在这里输入图像说明

  1. 连接数据库,然后单击初始化应用程序button。

在这里输入图像说明

  1. 应用程序初始化后,您可以从Easy APIs刀片添加API。

在这里输入图像说明

  1. userInfo.js文件更改为如下所示:

在这里输入图像说明

  1. 现在,我们可以使用端点http://<yourappname>.azurewebsites.net/api/userInfo访问API。

在这里输入图像说明

欲了解更多信息,请参阅此博客文章 。