我使用reste库来处理to上的api:
这是我的配置:
api.config({
debug : true,
autoValidateParams : false,
validatesSecureCertificate : false,
timeout : 4000,
url : Kb.baseUrl,
models: [{
name: "product",
id: "id",
//content: "retArray",
collections: [{
name: "products",
content: "response",
read: "get_products"
}],
}],
methods : [
{
name : "get_products",
post : "api/get_product"
}
],
...所以这就是我获取(完美工作)的方式:
var p = Alloy.Collections.get_products;
p.fetch({
success:function(m,r){
console.log(r)
}
});现在我必须传递对象到post (这不起作用,为什么?):
p.fetch({
data:{'id':'2'},
success:function(m,r){ console.log(r); }
});第二次抓取不起作用了,你有主意吗?
谢谢。
发布于 2017-04-27 17:34:31
在您的配置中,您没有指定如何处理id参数。RESTe并不知道(或者关心)你的API --也就是说,它是REST / PUT,GET based还是POST,GET等等,所以你需要告诉它。
将您的方法更改为:
{
name : "get_products",
post : "api/get_product/<id>"
}它应该工作得很好。这里的灵活性允许RESTe使用不符合正常REST模式的API,因此如果需要,可以这样做:
"api/get_product?id=<id>"例如。
https://stackoverflow.com/questions/38485169
复制相似问题