在webapi控制器中为Curl发布xml输入文件/数据

时间:2015-06-24 05:28:06

标签: xml curl model-view-controller asp.net-web-api

我们正试图通过CURL将数据发布到mvc控制器。我们为此目的构建的语法是: curl -X POST -v -H'Content-type:text / xml'-H“Connection:Keep-Alive”-H“Accept:application / html”-d @D:/RevoluzaSample.xml http://localhost:58532/api/Requisition/。 我们得到的错误是传递给控制器​​的数据为空。 xml数据是:

<?xml version="1.0" encoding="utf-8"?>
<ArrayOfRequisition>
<Requisition>
    <FarmUnit>farm1</FarmUnit>
    <CreatedDate>2012-02-22</CreatedDate>
  <DeliveryAddress >
   <Name>Test Address 1</Name>
   <AddrLine1>Sense and Sensibility</AddrLine1>
   <AddrLine2>ERTF</AddrLine2>
   <AddrLine2>SADAS</AddrLine2>
   <AddrLine2>RFFDE</AddrLine2>
   <AddrLine3>HGF</AddrLine3>
      <AddrLine4>HTF</AddrLine4>
 </DeliveryAddress> 
<RequisitionEntries>
   <ItemID>1</ItemID>
       <Quantity>19.95</Quantity>
</RequisitionEntries>
</Requisition>
<Requisition>
    <FarmUnit>farm1</FarmUnit>
    <CreatedDate>2012-02-22</CreatedDate>
  <DeliveryAddress >
   <Name>Test Address 1</Name>
   <AddrLine1>Sense and Sensibility</AddrLine1>
   <AddrLine2>ERTF</AddrLine2>
   <AddrLine2>SADAS</AddrLine2>
   <AddrLine2>RFFDE</AddrLine2>
   <AddrLine3>HGF</AddrLine3>
      <AddrLine4>HTF</AddrLine4>
 </DeliveryAddress> 
<RequisitionEntries>
   <ItemID>1</ItemID>
       <Quantity>19.95</Quantity>
</RequisitionEntries>
</Requisition>
</ArrayOfRequisition>

请告诉通过curl发送到控制器的正确语法

1 个答案:

答案 0 :(得分:1)

如果您有此Web API的工作客户端,我的意思是成功调用此操作的Web应用程序,您可以使用Chrome的开发人员控制台轻松获取cURL命令。采取以下步骤:

  • 在Chrome中打开您的网络应用
  • 按F12打开开发者控制台,然后选择网络选项卡(在顶部菜单上)
  • 采取必要的操作从应用程序调用Web API操作
  • 返回控制台“网络”选项卡,在左侧窗格中查找请求,右键单击它并选择“复制为cURL”

现在,您的剪贴板具有精确的cURL命令,可以准确地重现工作请求,包括有效负载,标头和任何其他选项。