HttpClient POST to Web API возвращает 400 неверных запросов - PullRequest
0 голосов
/ 20 июня 2019

Я пытаюсь опубликовать захваченное изображение из метода WPF в WebApi, используя HttpClient, но получаю 400 BAD REQUEST error.Я пытался в Google, но не смог решить проблему.Кто-нибудь мне помочь.

Ниже приведен код в WPF

    private async void btnLogin_Click(object sender, RoutedEventArgs e)
    {

        string FileName = 
        System.IO.Path.GetFullPath("../../captured_images") + 
        "//captured_image" + DateTime.Now.Day.ToString() + 
        DateTime.Now.Month.ToString() + DateTime.Now.Year.ToString() + 
        DateTime.Now.Second.ToString() + ".jpg";

        var encoder = new PngBitmapEncoder();
        encoder.Frames.Add(BitmapFrame.Create((BitmapSource)image.Source));
        using (FileStream stream = new FileStream(FileName, 
        FileMode.Create))
            encoder.Save(stream);

        string CASAAuthResponse = await 
        CASSecurity.GetAuthenticationToken();

        CASAuthTokenResponse techSeeTokenResponse = 
        JsonConvert.DeserializeObject<CASAuthTokenResponse> 
        (CASAAuthResponse);





      HttpContent fileStreamContent = new StreamContent(File.OpenRead(FileName));

                using (var client1 = new HttpClient())
                using (var formData = new MultipartFormDataContent())
                {
                    client1.DefaultRequestHeaders.Add("Authorization", "Bearer " + token);

                    formData.Headers.ContentType = MediaTypeHeaderValue.Parse("multipart/form-data");

                    formData.Add(fileStreamContent, "face", 
 Path.GetFileName(FileName));

                    var response = await 
client1.PostAsync(CASIdentifyFaceUrl, formData);
                    if (!response.IsSuccessStatusCode)
                    {
                        return null;
                    }

                }



    }

Сервер Web API:

  [HttpPost]
  [Route("identify")]

public async Task<IActionResult> Identify(IFormFile face)
{
    Guid temporaryUsername = Guid.Empty;
    using (var faceStream = face.OpenReadStream())
    {
        temporaryUsername = await verifyBusiness.IdentifyUser(faceStream, 
     new Guid(Requester.ClientId));
    }

    return Ok(temporaryUsername);
}

И я получаю ошибку, как описано ниже: {StatusCode: 400, ReasonPhrase: «неверный запрос», версия: 1.1, содержимое: System.Net.Http.StreamContent, заголовки: {Transfer-Encoding: chunked Strict-Transport-Security: max-age = 2592000 Дата: чт,20 июня 2019 11:13:28 GMT Set-Cookie: ARRAffinity = 4cbc3e777eee0146fcbb9f695794b29417cc953731f6f8f581457a1d7cd7aa14; путь = /; HttpOnly; домен = cas-qa.tempdata.net сервер-приложение: Powered X.JSON;charset = utf-8}}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...