数据记录"/>
Dynamics 365 Web Api 创建与更新返回记录ID及更新后的数据记录
在Dynamics CRM2016中web api的创建返回的status是204,response中没有返回任何数据,所以我们在要取返回数据记录的id时必须要通过截取字符串的方式去header中取。
那Dynamics 365改进了这个问题,通过在请求头中加prefer的方式,对创建的repuest进行了改进
var entity = {};entity["name"] = '测试创建';//文本 entity["telephone1"] = '213213';entity["fax"]="879879";var jsonEntity = window.JSON.stringify(entity); var req = new XMLHttpRequest()req.open("post", Xrm.Page.context.getClientUrl() + "/api/data/v8.2/accounts", false);req.setRequestHeader("Accept", "application/json");req.setRequestHeader("Content-Type", "application/json; charset=utf-8");req.setRequestHeader("OData-MaxVersion", "4.0");req.setRequestHeader("OData-Version", "4.0");req.setRequestHeader("Prefer", "return=representation");req.onreadystatechange = function () {if (this.readyState == 4) {if (this.status == 201) { var data=JSON.parse(this.responseText); } else { }}};req.send(jsonEntity);
看下结果,返回了包括accountid在内的所有字段记录,status也由原来的204变成了201,和原来的区别就在于多了个prefer的头,设置为“return=representation”
更新我就不贴示例代码及结果截图了,同创建一样,加一个prefer头,就能返回更新后的所有字段值。
更多推荐
Dynamics 365 Web Api 创建与更新返回记录ID及更新后的数据记录
发布评论