是否可以直接将 Swift 中的 PFFiles 传递给 Cloud Code 并将其设置在对象上?
我有一个 PFFile,
let imageData = UIImageJPEGRepresentation(self.imageView.image!, 0.1)
let imageFile = PFFile(data: imageData!)
我正尝试在用户对象上设置它,然后像这样在云代码中注册它:
Parse.Cloud.define("createNewUser", function(request, response) {
var theimage = request.params.image
var username = request.params.username
var pw = request.params.password
var user = new Parse.User();
user.set("username", username);
user.set("password", pw);
theimage.save().then(function(){
user.set("image",theimage)
user.signUp(null, {
success: function(user) {
response.error("working");
},
error: function(user, error) {
response.error("Sorry! " + error.message);
} });
}, function(error) {
response.error("Sorry! " + error.message);
});
});
调用云代码的iOS代码:
PFCloud.callFunctionInBackground("createNewUser", withParameters:
["username": username, "password": password, "image": imageFile],
block: { (result, error) -> Void in
// UI stuff
})
我收到这个错误:
TypeError: Cannot read property 'format' of undefined
at e.a.value (Parse.js:13:25673)
at main.js:40:14 (Code: 141, Version: 1.10.0)
我试着看这个:http://parse.com/docs/js/api/classes/Parse.File.html而且我仍然不确定如何将我的图像从 Swift 获取到云代码,以便我可以注册新用户...
最佳答案
我没有将图像作为 PFFile 传递,而是将图像作为 NSData 传递,随后将结果转换为 Parse.File 对象。然后我保存它并注册了用户。效果不错!
JS
var parseFile = new Parse.File("prof",theimage)
parseFile.save().then(function(){
user.set("image",parseFile)
user.signUp(null, {
success: function(user) {
response.success("working");
},
error: function(user, error) {
response.error("Sorry! " + error.message);
} });
}, function(error) {
response.error("Sorry! " + error.message);
});
关于ios - 在 Parse Cloud Code 中为对象设置 PFFile,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34523057/