2013-03-09 3 views
1

내 ODATA 서비스에 breeze.js를 사용하기 시작했습니다.jQuery-ajax에서 breeze.js (SharePoint ODATA 예)

SharePoint ODATA API를 사용하고 있는데 jQuery-Ajax와 함께 사용하는 방법에 대한 예제가 있습니다. breeze로이 작업을하려면 f-ing 멋진 것입니다. 누구든지 도와 줄 수 번역 할 jQuery-Ajax 전화 breeze.js? ... 아니면 올바른 방향으로 나를 밀어?

$.ajax({ 
    url: “../_api/SP.WebProxy.invoke”, 
    type: “POST”, 
    data: JSON.stringify({ 
    “requestInfo”: { 
     “__metadata”: { 
     “type”: “SP.WebRequestInfo” }, 
     “Url”: “http://get_my_data_from_this_url”, 
     “Method”: “GET”, 
     “Headers”: { 
      “results”: [{ 
      "__metadata": { "type": "SP.KeyValue" }, 
      "Key": "Accept", 
      "Value": "application/json;odata=verbose", 
      "ValueType": "Edm.String" 
      }] 
     } 
    } 
    }), 
    headers: { 
    “Accept”: “application/json;odata=verbose”, 
    “Content-Type”: “application/json;odata=verbose”, 
    “X-RequestDigest”: $(“#__REQUESTDIGEST”).val() 
    }, 
    success: successHandler, 
    error: errorHandler 
}); 

여기에서 SharePoint WebProxy에 대한 ODATA 호출을 볼 수 있습니다. 교차 도메인 호출을 처리하는 깔끔한 기능!

이 시점에서 질문 : 나는 breeze.js를 사용하여 데이터 객체를 구성 할 수 있습니까?

+0

안녕하세요. 내가 코드를 테스트 할 때 요청한 리소스에 'Access-Control-Allow-Origin'헤더가 없습니다. 따라서 원본 'null'은 액세스가 허용되지 않습니다. 이것은 제가 게시 한 질문과 같습니다 : http://stackoverflow.com/questions/26083657/accesing-sharepoint-online-from-various-clients – espenk

답변

1

_/api는 OData v3 끝점입니다. AFAIK는 Breeze와 JayData를 모두 지원하지 않습니다. 상황을 악화 시키려면 _api/$ metadata가 SP2013의 릴리스 버전에 구현되어 있지 않습니다. 메타 데이터 문서가 없으면 필요한 데이터 모델을 자동으로 만들 수있는 방법이 없습니다.

+0

좋은 지적입니다. breeze를 사용하면 클라이언트에서 메타 데이터를 정의한 다음 새 JsonResultsAdapter 기능을 사용하여 OData v3 json을 처리 할 수 ​​있습니다. 시도하지 않았지만 ... –

+0

Breeze 1.4.4, OData v3 지원을 참조하십시오. –

0

Breeze 1.4.4부터는 Breeze가 OData v3을 지원합니다.

+1

알아두면 좋겠지 만,이 jQuery-Ajax 호출을 breeze.js *로 번역하거나 ... 올바른 방향으로 나를 밀어 붙이겠습니까? ;-) – RainerAtSpirit