0
我试图做的在C#以下的等价...这个cURL PUT请求的C#等价物是什么?
curl --request PUT \
--user-agent "Your Client Name/1.0" \
--header "Authorization: Basic YWRtaW46WW91ckFQSUtleUhlcmU=" \
--header "Content-Type: application/xml" \
--data-binary '<order><status_id>10</status_id></order>' \
https://www.example.com/api/v2/orders/101
我的努力给我的404 - 错误的请求响应。我从来没有看过卷曲。 任何人有任何想法?
var url = String.Format("https://www.website.com/api/v2/orders/{0}", 1647);
var credentials = Convert.ToBase64String(
Encoding.ASCII.GetBytes(String.Format("{0}:{1}", "admin", "mypassword")));
var request = (HttpWebRequest)WebRequest.Create(url);
request.Method = "PUT";
request.Headers.Add(String.Format("Authorization: Basic {0}", credentials));
var status = "<?xml version='\"1.0'\" encoding='\"UTF-8'\"?><order><status_id>2<order><status_Id>";
using (var stream = request.GetRequestStream())
{
using (var writer = new BinaryWriter(stream))
{
writer.Write(status);
}
}
var response = request.GetResponse();
不要使用BinaryWriter.Write(字符串),它首先写入字符串长度。使用StreamWriter。 –