2016-03-03 91 views
-1

我在将此curl请求转换为RestSharp时出现问题,它返回404错误,请注意网址正确。 我认为问题来自-d参数。如何将此卷曲转换为RestSharp

curl -v -X POST https://sandbox.bluesnap.com/services/2/transactions \ 
-H 'Content-Type: application/xml' \ 
-H 'Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=' \ 
-d ' 
<card-transaction xmlns="http://ws.plimus.com"> 
    <card-transaction-type>AUTH_CAPTURE</card-transaction-type> 
    <recurring-transaction>ECOMMERCE</recurring-transaction> 
    <soft-descriptor>DescTest</soft-descriptor> 
    <amount>11.00</amount> 
    <currency>USD</currency> 
    <card-holder-info> 
     <first-name>test first name</first-name> 
     <last-name>test last name</last-name> 
    </card-holder-info> 
    <credit-card> 
     <card-number>4263982640269299</card-number> 
     <security-code>837</security-code> 
     <expiration-month>02</expiration-month> 
     <expiration-year>2018</expiration-year> 
    </credit-card> 
</card-transaction>' 

我做了一些事情是这样的:

var client = new RestClient("https://sandbox.bluesnap.com/services/2/transactions"); 
      var request = new RestRequest(Method.POST); 
      request.AddHeader("Content-Type", "Content-Type: application/xml"); 
      client.Authenticator = new HttpBasicAuthenticator("username", "password"); 



      request.AddBody(GetXmlToSend(record, CriditCardInfo)); 
      IRestResponse response = client.Execute(request); 
      var content = response.Content; 
      var response2 = client.Execute<dynamic>(request); 

回答

0

当你实例化一个新RestClient你应该使用的基本URL,例如:

var client = new RestClient("https://sandbox.bluesnap.com"); 

然后当你创建你RestRequest应该将路径传递给资源:

var request = new RestRequest("services/2/transactions", Method.POST);