Я использую HttpWebRequest для отправки запросов на iOS.Результат: тело из одного запроса прикреплено к другому запросу.Вот пример кода, который я использую для тестирования:
class Program
{
static async Task Main(string[] args)
{
var uri = new Uri(" http://webdavserver.net/User7bb0de4/" );
var payload = "content";
await MakeRequest(uri, payload);
await MakeRequest(uri, payload);
}
private static async System.Threading.Tasks.Task MakeRequest(Uri uri, string payload)
{
var firstRequest = WebRequest.Create(uri) as HttpWebRequest;
firstRequest.Method = "PROPFIND"; // PUT works OK. LOCK, PROPFIND, MKCOL - not
using (var stream = await firstRequest.GetRequestStreamAsync())
using (var textWriter = new StreamWriter(stream, System.Text.Encoding.UTF8))
{
await textWriter.WriteAsync(payload.ToLower());
}
}
}
Результат выполнения вышеуказанного кода на iOS следующий:
- Первый запрос: не присоединяетсятело (тело пусто).
- Второй запрос: вместо тела и части заголовков - прикреплено предыдущее тело запроса.
Проблема только в некоторых методах HTTP: LOCK, PROPFIND, MKCOL.PUT работает как положено.
Я что-то не так делаю или это ошибка .NET на iOS?