我在.net中有以下代码如何使用restsharp发送此多形式请求?
/// This creates a web request stream, and we write POST data here.
/// </summary>
/// <param name="asyncResult"></param>
private static void ConvertImage(Stream photoStream, string photoName)
{
string multipartBound = Guid.NewGuid().ToString("N");
HttpWebRequest httpWebRequest = HttpWebRequest.CreateHttp("http://api.ocrapiservice.com/1.0/rest/ocr");
httpWebRequest.Method = "POST";
httpWebRequest.ContentType = "multipart/form-data; boundary=" + multipartBound;
using (Stream stream = httpWebRequest.GetRequestStream())
{
UTF8Encoding encoding = new UTF8Encoding();
string formdata = "--" + multipartBound + "\r\nContent-Disposition: form-data; name=\"language\"\r\n\r\n" + "en" +
"\r\n--" + multipartBound + "\r\nContent-Disposition: form-data; name=\"image\"; filename=\"" + photoName + "\"" + "\r\n" + "Content-Type: image/"
+ System.IO.Path.GetExtension(photoName).Replace(".", "") + "\r\n\r\n";
byte[] bytes = encoding.GetBytes(formdata);
stream.Write(bytes, 0, bytes.Length);
CopyStream(photoStream, stream);
formdata = "\r\n--" + multipartBound + "\r\nContent-Disposition: form-data; name=\"apikey\"\r\n\r\n" + "NMUG85hLJ34V" + "\r\n" + multipartBound + "--\r\n";
bytes = encoding.GetBytes(formdata);
stream.Write(bytes, 0, bytes.Length);
}
var webResponse = httpWebRequest.GetResponse();
using (Stream stream = webResponse.GetResponseStream())
{
StreamReader reader = new StreamReader(stream);
}
}
答案 0 :(得分:2)
res/animator