我最近一直在研究移动服务,我喜欢允许开发人员让用户使用他们想要的任何凭据(Facebook、Twitter、Microsoft 帐户等)登录并允许推送的身份验证和推送通知功能通知是通用的,因此不必为每个操作系统编写不同的代码。
但是,我的问题是移动服务似乎非常有限。具体来说,似乎唯一暴露的接口是直接对数据库执行操作。我似乎无法理解如何在通用 REST API 上实现移动服务身份验证。
例如,我看不到在 node.js 中做这样的事情的任何方法:
var express = require('express');
var azure = require('azure');
var app = express();
app.get('/nearbyFriends', function(req, res){
if(azure.getUser(req).isAuthenticated()) { // pseudo code obviously
// find and return nearby friends
}
});
app.listen(3000);
我的问题是,我似乎只使用移动服务来进行简单的数据存储,我不能真正使用它来制作一个更强大的 API,而只是碰巧利用了身份验证提供程序组件。
我注意到我可以更改某些操作的默认操作,但只需要修改 Windows Azure 页面上的脚本来执行可能重要的业务逻辑似乎是非常糟糕的设计,我仍然必须使用数据库来支持每个 REST 操作,这对我正在做的事情不一定有意义。
我错过了重点吗?移动服务不应该以我设想的方式使用吗?