0

난 티타늄 appcelerator에 API를 처리 할 수 ​​reste 라이브러리를 사용 :티타늄 appcelerator의 reste 수집

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) 
    } 
}); 

이 내 설정이다

게시 할 개체가 있어야합니다 (작동하지 않는 이유는 무엇입니까?) :

p.fetch({ 
    data:{'id':'2'}, 
    success:function(m,r){ console.log(r); } 
}); 

이 두 번째 가져 오기 기능이 작동하지 않습니다. 아이디어가 있습니까?

감사합니다.

답변

0

구성에서 id 매개 변수를 사용하여 수행 할 작업을 지정하지 않습니다. RESTe는 API (예 : REST/PUT, GET 기반 또는 POST, GET 등)에 대해 알지 못합니다.

는 귀하의 방법을 변경

:

{ 
    name : "get_products", 
    post : "api/get_product/<id>" 
} 

하고 그것을 잘 작동합니다. 예를 들어

"api/get_product?id=<id>" 

: 유연성은 여기 RESTe는 말할 필요 그래서 만약 일반 REST 패턴을 따르지 않는 API를 사용하여 작업 할 수 있습니다.