在c#中使用catchom

本文关键字:catchom | 更新日期: 2023-09-27 18:04:07

我想在c#中使用catchom,但无法找到任何示例如果有的话,请提供一些示例代码。

我有这个curl的样品

谁能把这个转换成c#

 curl -F "image=@CATask1-Correct.png" -F "token=sometoken" https://r.catchoom.com/v1/search

我试着像这样转换

string url = "https://r.catchoom.com/v1/search";

       WebRequest myReq = WebRequest.Create(url);
       myReq.Headers["token"] = "sometoken";
       myReq.Headers["image"] = "imageurl";
       string username = "someid";
       string password = "pwd";
       string usernamePassword = username + ":" + password;
       CredentialCache mycache = new CredentialCache();
       mycache.Add(new Uri(url), "Basic", new NetworkCredential(username, password));
       myReq.Credentials = mycache;
       myReq.Headers.Add("Authorization", "Basic " + Convert.ToBase64String(new ASCIIEncoding().GetBytes(usernamePassword)));
       WebResponse wr = myReq.GetResponse();
       Stream receiveStream = wr.GetResponseStream();
       StreamReader reader = new StreamReader(receiveStream, Encoding.UTF8);
       string content = reader.ReadToEnd();

但是抛出错误,404没有找到

谢谢

在c#中使用catchom

您应该按照W3C页面中描述的格式对post参数进行多部分编码。这个答案展示了如何使用c#

以多部分格式进行编码。

同样,如果你正在使用microsoft.net Framework>= 4.5,你可以使用这个答案解释的HttpClient类。

希望这对你有帮助;)