Csharp/C#教程:通过webservice api更新Prestashop中的订单状态分享


通过webservice api更新Prestashop中的订单状态

我在这做错了什么?

首先,我发出获取现有订单的请求,然后更改检索到的xml中的current_status字段的值。 然后我用修改后的xml作为参数发出一个PUT请求,但我得到这样的响应:

         

当我调试代码时,在执行之前PUT请求中的xml参数没有问题。 那么’原始XML’显示xml如此编码? 我必须设置某种编码吗? 我的代码是在C#中。

似乎xml参数必须是RequestBody类型。 如果未指定,则会自动将其设置为键入GetOrPost,这会导致“String无法解析为XML”错误。 我不确定一切是如何运作的,但似乎这是解决问题的方法。

 RestRequest request; request = new RestRequest("api/orders/" + orderID, Method.GET); IRestResponse response = client.Execute(request); XElement orderXML = XElement.Parse(response.Content); XElement orderEl = orderXML.Descendants().FirstOrDefault(); orderEl.Element("current_state").Value = "10"; request = new RestRequest("api/orders", Method.PUT); request.AddParameter("xml", orderXML.ToString(), ParameterType.RequestBody); IRestResponse response2 = client.Execute(request); 

您还可以使用C#编写的.Net包装器,而不是发送和检索XML请求。 它还允许您使用纯XML和http请求上传和更改图像,这有点棘手。 它被称为PrestaSharp 。

上述就是C#学习教程:通过webservice api更新Prestashop中的订单状态分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/991820.html

(0)
上一篇 2021年12月24日
下一篇 2021年12月24日

精彩推荐