Я пытаюсь прочитать потоковые данные из HttpRequest.Body, но получаю пустую строку.Запрос отправляется сюда из проекта .net
HttpWebRequest request = null;
Uri uri = new Uri(**Endpoint**);
UTF8Encoding encoding = new UTF8Encoding();
byte[] bytes = encoding.GetBytes(message);
request = (HttpWebRequest)WebRequest.Create(uri);
request.Method = "POST";
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = bytes.Length;
request.UseDefaultCredentials = true;
using (Stream writeStream = request.GetRequestStream()) {
writeStream.Write(bytes, 0, bytes.Length);
}
try {
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
if (response.StatusCode == HttpStatusCode.OK) {
return true;
} else {
return false;
}
} catch {
lock (endpointLock) {
_pushHttpEndpoint = null;
}
return false;
}
Запрос отправляется здесь. Это приложение .net core 2.1.Я пытаюсь прочитать данные в теле запроса, но они возвращаются пустыми
[HttpPost]
public string Post()
{
var bodyStr = "";
var req = HttpContext.Request;
req.EnableRewind();
using (StreamReader reader
= new StreamReader(req.Body, Encoding.UTF8, true, 1024, true))
{
bodyStr = reader.ReadToEnd();
}
req.Body.Seek(0, SeekOrigin.Begin);
//do other stuff
return bodyStr;
}
Может кто-нибудь, пожалуйста, помогите мне с этим.Мы находимся в положении, когда мы не можем изменить код решения .net.Любые изменения должны быть сделаны на стороне решения .net core.Мы пытаемся приспособить новый API вместо существующей конечной точки.(