如何使用 angular.js 在 strongloop 中获取用户信息
How to get User information in strongloop using angular.js
我尝试了很多方法来使用 strongloop 获取用户 list/functions 并使用 lb-ng 生成 angular.js 服务。每次我尝试获取任何用户功能时,我都会收到一条未授权的消息。
为什么生成的服务文件会包含用户函数,无法从前端调用它。许多文章说这是故意的。这是一个错误还是我做错了?
这是我用来检查重复用户的代码。
angular.module('app')
.controller('UserCtrl', ['$scope', 'User',
function ($scope, User) {
$scope.data = {};
$scope.verificationSent = false;
$scope.duplicateUser = false;
$scope.create = function () {
User
.create($scope.data)
.$promise
.then(function () {
$scope.verificationSent = true;
console.log('User %s created successfully!', $scope.data['username']);
})
}
$scope.usernameExists = function () {
User
.findOne({
where: {
username: $scope.data['username']
}
})
.$promise
.then(function (result) {
console.log(result);
})
}
}
])
这是我从前端调用的方式。
<form class="form-horizontal" name="form" ng-submit="form.$valid && usernameExists()" novalidate>
这是返回的错误。
GET http://0.0.0.0:3000/api/Users/findOne?where=%7B%22username%22:%22test%22%7D 401 (Unauthorized)
也附上截图...
我已经试了很多周了,请帮忙...
strongloop 创建的后端服务需要您在调用中缺少的正确授权。 /Users get 调用配置为拒绝所有请求,如果您想打开它,则必须明确说明这一点。但在执行此操作时要小心,您可能会暴露私人用户凭据,这通常是不受欢迎的。你想要做的是创建一个服务器端调用,检查用户名是否重复并做出相应响应,你可以让每个人都允许这个调用,然后从 Angular 调用它并做你需要的.希望解释清楚。
更新
以下是修改 ACL 的指南:https://docs.strongloop.com/display/public/LB/Controlling+data+access
我尝试了很多方法来使用 strongloop 获取用户 list/functions 并使用 lb-ng 生成 angular.js 服务。每次我尝试获取任何用户功能时,我都会收到一条未授权的消息。
为什么生成的服务文件会包含用户函数,无法从前端调用它。许多文章说这是故意的。这是一个错误还是我做错了?
这是我用来检查重复用户的代码。
angular.module('app')
.controller('UserCtrl', ['$scope', 'User',
function ($scope, User) {
$scope.data = {};
$scope.verificationSent = false;
$scope.duplicateUser = false;
$scope.create = function () {
User
.create($scope.data)
.$promise
.then(function () {
$scope.verificationSent = true;
console.log('User %s created successfully!', $scope.data['username']);
})
}
$scope.usernameExists = function () {
User
.findOne({
where: {
username: $scope.data['username']
}
})
.$promise
.then(function (result) {
console.log(result);
})
}
}
])
这是我从前端调用的方式。
<form class="form-horizontal" name="form" ng-submit="form.$valid && usernameExists()" novalidate>
这是返回的错误。
GET http://0.0.0.0:3000/api/Users/findOne?where=%7B%22username%22:%22test%22%7D 401 (Unauthorized)
也附上截图... 我已经试了很多周了,请帮忙...
strongloop 创建的后端服务需要您在调用中缺少的正确授权。 /Users get 调用配置为拒绝所有请求,如果您想打开它,则必须明确说明这一点。但在执行此操作时要小心,您可能会暴露私人用户凭据,这通常是不受欢迎的。你想要做的是创建一个服务器端调用,检查用户名是否重复并做出相应响应,你可以让每个人都允许这个调用,然后从 Angular 调用它并做你需要的.希望解释清楚。
更新 以下是修改 ACL 的指南:https://docs.strongloop.com/display/public/LB/Controlling+data+access