我在服务器用node产生数据,然后在客户端用js更新数据,会出现acl问题
但是在客户端产品数据,就可以更新。我检查了,表的ACL设置是一样的
-
创建时间
16年6月1日
-
最后回复
16年6月3日
-
5
回复
-
2.8K
浏览
-
2
用户
我在服务器用node产生数据,然后在客户端用js更新数据,会出现acl问题
但是在客户端产品数据,就可以更新。我检查了,表的ACL设置是一样的
var Post = AV.Object.extend('xyqNews');
var post = new Post();
post.save({
publisher:"mainClub",
newsMainImage:obj,
newsUrl:"http://dwz.cn/3kHNsP",
newsTitle:random()+"校友圈正式发布",
newsDescription:random()+"广东外语外贸大学,简称广外,坐落于有“花城”美 称的广州市,学校入选“亚洲大学学生交流集体行动 计划“(亚洲校园计划),是向联合国提供高端翻译人才的全球19所大学之一、全国国际经济与贸易学科的创始单位之一。"
},{
success:function(obj){
console.log("success");
res.send("created " + obj.id);
},error:function(){
console.log("error");
}
});
这个是其中一段,leanengine
'use strict';
var router = require('express').Router();
var AV = require('leanengine');
var rongcloudSDK = require( 'rongcloud-sdk' );
rongcloudSDK.init( 'sfci50a7c2l9i', 'gdv7Uk30RExwV' );
function beginRequest(){
requestify.get('http://localhost:3000/addStarFriendToStudent').then(function(response) {
// Get the response body
var responseBody = response.getBody();
console.log(responseBody);
beginRequest();
});
}
//beginRequest();
router.get('/duplicateData', function(req, res) {
startCreatingObj();
});
function startCreatingObj(){
createAnObj(function(){
startCreatingObj();
})
}
var counter = 0;
function createAnObj(callback){
var Post = AV.Object.extend('TODO');
var post = new Post();
counter++;
post.save({
name:"harry" + counter,
email:"harry@qq.com",
counter:counter
},{
success:function(){
console.log("success");
callback();
},error:function(){
console.log("error");
}
});
}
router.get('/createNews', function(req, res) {
createImageFromUrl("http://www.3773.com.cn/zhongkao/UploadFiles_1401/200905/200951922245239.jpg",function(obj){
console.log('created image success');
var Post = AV.Object.extend('xyqNews');
var post = new Post();
post.save({
publisher:"mainClub",
newsMainImage:obj,
newsUrl:"http://dwz.cn/3kHNsP",
newsTitle:random()+"校友圈正式发布",
newsDescription:random()+"广东外语外贸大学,简称广外,坐落于有“花城”美 称的广州市,学校入选“亚洲大学学生交流集体行动 计划“(亚洲校园计划),是向联合国提供高端翻译人才的全球19所大学之一、全国国际经济与贸易学科的创始单位之一。"
},{
success:function(obj){
console.log("success");
res.send("created " + obj.id);
},error:function(){
console.log("error");
}
});
});
});
router.get('/createNewsComment',function(req,res){
var Post = AV.Object.extend('xyqNewsComments');
var post = new Post();
post.save({
content:random()+"very good love it"
},{
success:function(obj){
console.log("success" + obj.id);
res.send("created " + obj.id);
},error:function(){
console.log("error");
}
});
});
router.get('/createMainClub',function(req,res){
getSchool(function(schools){
var Post = AV.Object.extend('xyqMainClub');
var post = new Post();
post.save({
name:random()+"XX总会",
school:schools[random()]
},{
success:function(obj){
console.log("success" + obj.id);
res.send("created " + obj.id);
},error:function(){
console.log("error");
}
});
});
});
router.get('/addNewsToMainClub',function(req,res){
getObj("xyqNews",function(news){
news[0].set('publisher',"mainClub");
news[0].save(null,{
success:function(_news){
getObj('xyqMainClub',function(mainClubs){
var theClub = mainClubs[random()];
var relation = theClub.relation('news');
relation.add(_news);
theClub.save().then(function(user) {
console.log("created " + user.id);
res.send("created " + user.id);
}, function(error) {
console.log(error);
});
});
},error:function(){
console.log("error");
}
})
},function(query){
query.doesNotExist('publisher');
});
});
router.get('/createdEvents',function(req,res){
getSchool(function(schools){
var Post = AV.Object.extend('xyqEvents');
var post = new Post();
var typeArray = ["主题活动","行业交流","单身聚会"]
post.save({
name:random()+"单身聚会",
type:typeArray[random(3)],
date:new Date(),
startingTime:new Date(),
endTime:new Date(),
location:random()+"中山远路",
numberLimit:55,
school:schools[random()],
eventDescription:"青海大学演讲与口才艺术交流周启 动仪式暨博纳——演讲与口才协会 成立庆典 介绍书 青海大学博纳——演讲与口才协会成立庆典"
},{
success:function(obj){
console.log("success" + obj.id);
res.send("created " + obj.id);
},error:function(){
console.log("error");
}
});
});
});
router.get('/createStudent',function(req,res){
singUpUser(function(user){
var Post = AV.Object.extend('xyqStudent');
var post = new Post();
post.save({
name:random()+"海城",
account:random()+"haicheng",
nickName:random()+"海城",
gender:"男",
province:random()+"广东",
city:random()+"深圳",
personalSignature:random()+"校友圈创始人"
},{
success:function(obj){
console.log("success create xyqStudent" + obj.id);
user.set("xyqStudent",obj);
user.save().then(function(user){
res.send("link user to xyqStudent " + obj.id);
});
},error:function(){
console.log("error");
}
});
});
});
router.get('/addFriendToStudent',function(req,res){
getStudent(function(students){
var theStudentIndex = random(students.length - 1);
var relation = students[theStudentIndex].relation('friends');
relation.add(students[random(students.length - 1)]);
students[theStudentIndex].save().then(function(student){
res.send("success add friend to a student " + student.id);
},function(error){
console.log("add friend to student error");
});
});
})
router.get('/addStarFriendToStudent',function(req,res){
getStudent(function(students){
var theStudentIndex = random(students.length - 1);
var relation = students[theStudentIndex].relation('starFriends');
relation.add(students[random(students.length - 1)]);
students[theStudentIndex].save().then(function(student){
res.send("success add star friend to a student " + student.id);
},function(error){
console.log("add friend to student error");
});
});
})
function guid() {
function s4() {
return Math.floor((1 + Math.random()) * 0x10000)
.toString(16)
.substring(1);
}
return s4() + s4() + '-' + s4() + '-' + s4() + '-' +
s4() + '-' + s4() + s4() + s4();
}
function singUpUser(callback){
var user = new AV.User();
user.set('username', guid());
user.set('password', '1');
user.set('actualPassword', '1');
user.signUp().then(function(_user) {
// 注册成功,可以使用了
rongcloudSDK.user.getToken( _user.id, _user.attributes.username, "http://img3.duitang.com/uploads/item/201502/20/20150220202523_fz2Jt.jpeg", function( err, resultText ) {
if( err ) {
console.log("rong cloud error" + err);
}
else {
var result = JSON.parse( resultText );
if( result.code === 200 ) {
_user.set("RMToken",result.token);
_user.save(null,{
success: function () {
callback(user);
}
})
}
}
} );
console.log("created user " + user.id);
}, function(error) {
// 失败了
console.log('Error: ' + error.code + ' ' + error.message);
});
}
router.get('/studentJoinClass',function(req,res){
getStudent(function(students){
getClass(function(classes){
var classRam = random();
var relation = classes[classRam].relation('students');
relation.add(students[random(numberOfStudent - 1)]);
classes[classRam].save().then(function(user) {
console.log('success obj ' + user.id);
res.send('success obj ' + user.id);
}, function(error) {
console.log(error.message);
});
})
});
});
var numberOfStudent = 0;
function getStudent(callback){
var query = new AV.Query('xyqStudent');
query.addAscending('updatedAt');
query.find().then(function(results) {
console.log('Successfully retrieved ' + results.length + ' student.');
numberOfStudent = results.length;
callback(results);
}, function(error) {
console.log('Error: ' + error.code + ' ' + error.message);
});
}
function getObj(className, callback,optioncbk){
var query = new AV.Query(className);
if(optioncbk){
optioncbk(query);
}
query.addAscending('updatedAt');
query.find().then(function(results) {
console.log('Successfully retrieved ' + results.length + ' posts.');
callback(results);
}, function(error) {
console.log('Error: ' + error.code + ' ' + error.message);
});
}
function getClass(callback){
var query = new AV.Query('xyqClass');
query.addAscending('updatedAt');
query.find().then(function(results) {
console.log('Successfully retrieved ' + results.length + ' posts.');
callback(results);
}, function(error) {
console.log('Error: ' + error.code + ' ' + error.message);
});
}
function getSchool(callback){
var query = new AV.Query('xyqSchool');
query.include('post');
query.find().then(function(results) {
callback(results);
}, function(error) {
console.log('Error: ' + error.code + ' ' + error.message);
});
}
function getProgram(callback){
var query = new AV.Query('xyqProgram');
query.find().then(function(results) {
callback(results);
}, function(error) {
console.log('Error: ' + error.code + ' ' + error.message);
});
}
function getFaculty(callback){
var query = new AV.Query('xyqFaculty');
query.find().then(function(results) {
callback(results);
}, function(error) {
console.log('Error: ' + error.code + ' ' + error.message);
});
}
function getSchool(callback){
var query = new AV.Query('xyqSchool');
query.include('post');
query.find().then(function(results) {
callback(results);
}, function(error) {
console.log('Error: ' + error.code + ' ' + error.message);
});
}
function getProgram(callback){
var query = new AV.Query('xyqProgram');
query.find().then(function(results) {
callback(results);
}, function(error) {
console.log('Error: ' + error.code + ' ' + error.message);
});
}
function getFaculty(callback){
var query = new AV.Query('xyqFaculty');
query.find().then(function(results) {
callback(results);
}, function(error) {
console.log('Error: ' + error.code + ' ' + error.message);
});
}
function random(range){
if(range){
return parseInt(Math.random()*range);
}else{
return parseInt(Math.random()*10);
}
}
router.get('/createSchool',function(req,res){
var Post = AV.Object.extend('xyqSchool');
var post = new Post();
post.save({
name:random()+"北京大学"
},{
success:function(obj){
console.log("success");
res.send("created " + obj.id);
},error:function(){
console.log("error");
}
});
});
router.get('/createFaculty',function(req,res){
getSchool(function(schools){
var Post = AV.Object.extend('xyqFaculty');
var post = new Post();
post.save({
name:"XX学院" + random(),
school:schools[random()]
},{
success:function(obj){
console.log("success");
res.send("created " + obj.id);
},error:function(){
console.log("error");
}
});
});
});
router.get('/createClass',function(req,res){
getProgram(function(programs){
var Post = AV.Object.extend('xyqClass');
var post = new Post();
post.save({
name:"XX班级" + random(),
program:programs[random()]
},{
success:function(obj){
console.log("success");
res.send("created " + obj.id);
},error:function(){
console.log("error");
}
});
});
});
router.get('/createProgram',function(req,res){
getFaculty(function(facultys){
var Post = AV.Object.extend('xyqProgram');
var post = new Post();
post.save({
name:"XX专业" + random(),
faculty:facultys[random()]
},{
success:function(obj){
console.log("success");
res.send("created " + obj.id);
},error:function(){
console.log("error");
}
});
});
});
router.get('/createImageByUrl',function(req,res){
createImageFromUrl("http://www.3773.com.cn/zhongkao/UploadFiles_1401/200905/200951922245239.jpg",function(obj){
console.log('created image success');
res.send("created image " + obj.id);
});
});
function createImageFromUrl(url,callback){
var file = AV.File.withURL('imageNew.jpg', url);
file.save().then(function(obj) {
// 数据保存成功
console.log(obj.url());
callback(obj);
}, function(err) {
// 数据保存失败
console.log(err);
});
}
router.get('/testRongcloud', function(req, res) {
rongcloudSDK.user.getToken( 'asdfsad128312jnn2131', 'Lance1', 'http://files.domain.com/avatar.jpg', function( err, resultText ) {
if( err ) {
res.send(err);
}
else {
var result = JSON.parse( resultText );
if( result.code === 200 ) {
res.send(result);
}
}
} );
});
router.post('/getRongToken', function(req, res) {
console.log(req.body);
rongcloudSDK.user.getToken( req.body.id, req.body.username, req.body.imageUrl, function( err, resultText ) {
if( err ) {
res.send(err);
}
else {
var result = JSON.parse( resultText );
if( result.code === 200 ) {
res.send(result);
}
}
} );
});
module.exports = router;
主题 | 分类 | 回复 | 浏览 | 活动 |
---|---|---|---|---|
使用删除和更新对象的时候执行出现APP无响应 | SDK / API | 1 | 978 | 21-09-6 |
ios调用云函数总是错误 | SDK / API | 0 | 527 | 17-12-15 |
avfile怎么批量上传? | SDK / API | 5 | 1.7K | 16-04-25 |
内嵌查询各种疑问,麻烦大家帮忙 | SDK / API | 6 | 1.3K | 16-09-13 |
点赞,新版本iOS SDK实时通信的更新! | SDK / API | 1 | 702 | 15-09-14 |