2015-09-05 34 views
0

我不知道哪个参数传递到这个云代码功能(parse.com)如何在我的iOS应用程序中调用云代码函数(解析)?

Parse.Cloud.define('stripe_card_create', function(req, res) { 
Parse.Cloud.httpRequest({ 
method: 'POST', 
headers: stripe_headers, 
url: environment.stripe.api_url + '/customers/' + req.params.customer_id + '/sources', 
params: { 
    source: req.params.token_id 
}, 
success: function(card) { 
    res.success(card.data); 
}, 
error: function(err) { 
    res.error(err.text); 
    } 
    }) 
}); 

这些都应该被称为

req.customer_id(必需)客户ID

req.token_id(必需)标记化卡
但是我收到一个错误,当我使用此功能

PFCloud.callFunctionInBackground("stripe_card_create", withParameters: ["req.params.customer_id":"req.params.token_id"]) 
调用

这是错误

[Error]: { 
     "error": { 
     "type": "invalid_request_error", 
     "message": "No such customer: undefined", 
     "param": "customer" 
     } 
    } 
    (Code: 141, Version: 1.7.5) 

回答

0

在云功能,req.params.customer_id意味着这个英文:

reqfunction(req, res),抢params。从params属性中,获取名为customer_id的密钥。当您从Swift代码调用函数时,您传递的字典密钥将是params的属性。

您的云代码需要密钥customer_id而不是req.params.customer_id。你想这样做:

PFCloud.callFunctionInBackground("stripe_card_create", withParameters: ["customer_id": "\(whatever the id is you need to pass)"], block: nil) 

你在字典中传递的键值也非常奇怪地命名。要么是来自同一脉络的错误,要么你应该把它改名为更好的。

+0

通过云代码参数传递会话令牌安全吗?你如何设置标题? –