Javascript 为什么此代码不会在Microsoft Dynamics CRM 2011中使用Odata创建商机?
长话短说,当我将URL结尾更改为“AccountSet”时,这段代码将创建一个帐户,但当我尝试创建一个新的Opportunity时,它除了给我一个“坏请求”错误之外,不会做任何事情。有人看到我遗漏的东西吗?非常感谢你在这里的帮助。(另外,为了记录在案,我确实尝试了CRMRestkit,但也出现了一个错误)Javascript 为什么此代码不会在Microsoft Dynamics CRM 2011中使用Odata创建商机?,javascript,dynamics-crm-2011,Javascript,Dynamics Crm 2011,长话短说,当我将URL结尾更改为“AccountSet”时,这段代码将创建一个帐户,但当我尝试创建一个新的Opportunity时,它除了给我一个“坏请求”错误之外,不会做任何事情。有人看到我遗漏的东西吗?非常感谢你在这里的帮助。(另外,为了记录在案,我确实尝试了CRMRestkit,但也出现了一个错误) 您是否尝试运行Fiddler来接收更好的错误消息 代码看起来不错,可能是字段名中的错误 REST端点是否抛出相同的错误 谢谢 Mario您可以看到,打开跟踪()是否也会给您带来更好的错误。嗯,
您是否尝试运行Fiddler来接收更好的错误消息 代码看起来不错,可能是字段名中的错误 REST端点是否抛出相同的错误 谢谢
Mario您可以看到,打开跟踪()是否也会给您带来更好的错误。嗯,有没有关于如何运行Fiddler以获取该消息的快速教程?:)很抱歉,我很久以前只使用过一次。只要安装并打开它,它就会记录下你的所有流量。您将看到一个长长的列表,列出所有调用,识别您的调用,并查看BadRequest响应的TextView和RawView。我从TextView获取此消息{“错误”:{“代码”:“-2147220947”,“消息”:{“lang”:“en-US”,“值”:“未指定客户”。}}}
var newOpportunity = new Object();
newOpportunity.Name = "TEST";
newOpportunity.StatusCode = 0;
var contact = new Object();
contact.Id = "b4531ee9-9477-4262-8e18-00b60369352a";
contact.LogicalName = "contact";
contact.Name = "Bacon Jones";
newOpportunity.ContactId = contact;
var jsonNewOpp = window.JSON.stringify(newOpportunity);
$.ajax({ type: "POST",
contentType: "application/json; charset=utf-8",
datatype: "json",
url: Xrm.Page.context.getServerUrl() + "/XRMServices/2011/OrganizationData.svc/OpportunitySet",
data: jsonNewOpp,
beforeSend: function (XMLHttpRequest) {
XMLHttpRequest.setRequestHeader("Accept", "application/json");
},
success: function (data, textStatus, XmlHttpRequest) {
alert("success");
//var getNewRecord = data["d"];
//alert("GUID: " + getNewRecord.OpportunityId);
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
alert("failure due to " + errorThrown);
}
});