2012-06-20 4 views
0

jQuery를 사용하여 Dynamics CRM2011 온라인에서 정보를 얻어야하는 웹 페이지가 있습니다. 테스트로서 필자는 테스트 시스템에서 모든 계정을 검색하려고 시도했습니다. 필자는 CRM 제품 내에서 테스트 한 일부 코드를 사용했으며 작동합니다.왜 내 Dynamics CRM 온라인 jQuery oData 쿼리가 작동하지 않습니까?

CRM 도메인에없는 별도의 웹 페이지에서 동일한 jQuery 코드를 실행하려고하면 작동하지 않습니다 (전송되지 않음). 그래서 $ .support.cors = true 라인을 추가하여 cross- 사이트 스크립팅. 이제 실행될 때 자격 증명을 묻는 대화 상자가 나타납니다. 그러나 CRM 온라인 자격 증명을 입력하면이를 수락하지 않습니다. 세 번 시도한 후에 나는 "무단"이라는 오류 메시지를받습니다.

아무도 도와 줄 수 있습니까? 여기

코드입니다 : 내가 그런 일을 만났다 생각

$(document).ready(function() 
{ 

var request = "https://myorganisation.crm4.dynamics.com/XRMServices/2011/OrganizationData.svc/AccountSet"; 
$.support.cors = true; 

$.ajax({ 
    type: "GET", 
    contentType: "application/json; charset=utf-8", 
    datatype: "json", 
    url: request, 
    async: false, 
    beforeSend: 
     function (XMLHttpRequest) 
     { 
      XMLHttpRequest.setRequestHeader("Accept", "application/json"); 
     }, 
    success: 
     function (data, textStatus, XmlHttpRequest) 
     { 
      var result = data.d.results[0]; 
      alert('Success'); 
      alert(result); 
      alert(result.Name); 
     }, 
    error: 
     function (XmlHttpRequest, textStatus, errorThrown) 
     { 
      alert(textStatus); 
      alert(errorThrown); 
     } 
    }); 
}); 

답변

1

oData 끝점은 크로스 사이트 요청을 지원하지 않습니다. Silverlight 또는 JavaScript 웹 리소스를 사용하는 CRM 응용 프로그램 내에서만 인증을 지원하도록 설계되었습니다.

자세한 내용은 MSDN article을 참조하십시오.

0

몇 시간 전에 기능 잘 작동하지만 바로 성공의 기능을

을 변수의 값을 업데이트 할 수 없습니다 요청 내가받은 값

항상 새로운 기능 = 요청이 완료된 후 발사 이전 완료 기능 변수를 업데이트하는 대신 성공의 always() 기능을 사용 왜

http://api.jquery.com/jQuery.ajax/

이 페이지에서

: 중단주의 사항 : jqXHR.success(), jqXHR.error() 및 jqXHR.complete() 콜백은 jQuery를 1.8에서 더 이상 사용되지 않습니다. 최종 제거를위한 코드를 준비하려면 대신 jqXHR.done(), jqXHR.fail() 및 jqXHR.always()를 사용하십시오.

+0

어떻게 사용되는지 모르겠습니다 (저는 jQuery 개발자가 아닙니다). 나는 단지 성공과 오류 값을 제거하고, fail() 함수에 오류를 넣고 always() 비트에 성공을 넣을 것인가? beforeSend : 섹션과 그 밖의 모든 것을 동일하게 유지할 수 있습니까 (CRM에 대한 요청 헤더 설정이 필요합니다). – Richard

+0

... 그렇다면, 나는 그것을 시도하고 나는 같은 결과를 얻는다. 반복적으로 자격 증명을 요청 받았지만 작동하지 않습니다. – Richard

관련 문제