我有WooCommerce提供捲曲命令:捲曲在.NET應用程序
curl https://example.com/wp-json/wc/v2/orders \
-u consumer_key:consumer_secret
我使用Web客戶端:
using (WebClient wc = new WebClient())
{
Uri url = new Uri("https://www.myhost.com/wp-json/wc/v2/orders");
System.Collections.Specialized.NameValueCollection reqparm = new System.Collections.Specialized.NameValueCollection();
reqparm.Add("consumer_key", keyValue);
byte[] responsebytes = wc.UploadValues(url, "POST", reqparm);
string responsebody = Encoding.UTF8.GetString(responsebytes);
}
但我發現了這個錯誤:
IOException:無法從傳輸連接讀取數據:現有連接被遠程主機強制關閉。
我在這裏做了什麼錯?我很確定我的網址和密鑰是正確的。
編輯:剛纔想這是建議的CmdrTchort和大衛:
using (WebClient wc = new WebClient())
{
wc.UseDefaultCredentials = true;
wc.Credentials = new NetworkCredential("consumer_key", keyValue);
string responsebody = wc.DownloadString("https://www.myhost.com/wp-json/wc/v2/orders");
}
仍然會收到同樣的錯誤。
編輯:我有我已經提供了無效的憑證懷疑我會更新一次,這變得清晰......
我得到了錯誤的憑據。但是,這並沒有解決問題。
我不明白consumer_key:consumer_secret
應該如何表示在這個請求。有兩個值:consumer_key和consumer_secret(之前我只提供了consumer_secret,我放在keyValue
的位置)。我現在假設它應該是這樣的形式:
wc.Credentials = new NetworkCredential("consumer_key", "consumer_secret");
其中「consumer_key」和「consumer_secret」表示提供的唯一值。這不起作用。這開始變得有點刺激。
由於錯誤信息,它看起來像證書或SSL/TLS版本問題或不匹配 – Pac0
你的處理提到你有他們提供的cURL命令,但是你是否已經通過WebClient嘗試點擊工作站來測試它?這可能有助於更好地隔離問題,以確定cURL是否出現同樣的問題,並指導您確定是否應該查看自己的代碼或您與Web服務之間的某些內容。 –