我个人对CRM 2011没有任何经验,最近才发现REST oData API,因此决定使用基本的jQuery ajax调用对其进行破解。我创建了一个基本的html页面,并将下面的代码放在我从各种Google搜索中摘录的代码片段中。似乎是一个相当简单的电话:Dynamics CRM 2011使用jQuery的REST API
var serverurl = 'http://[OrganizationUrl]/XRMServices/2011/OrganizationData.svc/[PrivateEntity]?$select=[PrivateEntity_Field1],[PrivateEntity_Field2]';
$.ajax({
beforeSend: function (xhr) {
xhr.setRequestHeader('Accept', 'application/json');
},
url: serverurl,
type: 'GET',
dataType: 'jsonp',
contentType: 'application/json; charset=utf-8',
success: function (data) {
alert('success');
},
error: function (xhr, status, error) {
alert("Error : " + status);
},
});
这一切确实是去错误回调和警报“错误:parseerror”。
上萤火仔细检查产生以下请求和响应头:
尽管在报头中明确指定JSON和内容仍然带回XML /原子饲料和仍然而来的错误回调而不是成功的。
此JavaScript是否必须从CRM内部执行,即先部署到CRM?或者它可以像我从一个外部自包含的HTML页面那样工作?我熟悉jQuery,但对CRM或此REST API不熟悉,所以在此深入一点。任何帮助表示赞赏
更新:我已经在执行的小提琴手下面的代码,并将其带回我从CRM期望:
GET http://[OrganizationUrl]/XRMServices/2011/OrganizationData.svc/[PrivateEntity]?$select=[PrivateEntity_Field1],[PrivateEntity_Field2] HTTP/1.1
User-Agent: Fiddler
Host: melmd0105:5555
Accept: application/json
很公平。所以我想最好的选择是部署到CRM并从CRM中运行JavaScript。 – tkha007