Ошибка 500 в посте .net core web api с использованием fetch - PullRequest
0 голосов
/ 31 октября 2019

Я использую API выборки javascript https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API/Using_Fetch с веб-интерфейсом .net core 3.

контроллер возвращает OK (объект), но выборка получает код состояния 500.

вот контроллер. Я могу пройти по коду и увидеть, что он возвращает Ok (клиент)

[HttpPost]
        public async Task<IActionResult> PostCustomerAsync([FromBody] Customers customer)
        {

            await _customersService.AddAsync(customer);
            return Ok(customer);
        }
    }

вот выборка.

   fetch("./api/customers",
        {
            method: "POST", body: JSON.stringify(data),
            headers: {
                'Accept': 'text json',
                'Content-Type': 'application/json'
            },
        })
         .then(function(response, error){
             console.log(error);
             console.log(response);
             if(!response.ok){
                 console.log(response);
                 throw Error(response.statusText);
             }
             return response;
         }).then(function(response){
             Toastr.success(`${data.firstname} ${data.lastname} has been successfully registered`);  
             const bookChapterTable = new BookChapterTable();     
         }).catch(function(error){
             console.log(error);
             Toastr.error(`An error occured : ${error}`);        
         })
  }

выборка останавливается на! Response.ok

вот ответ.

body: ReadableStream
locked: false
__proto__: ReadableStream
bodyUsed: false
headers: Headers {}
ok: false
redirected: false
status: 500
statusText: ""
type: "basic"
url: "https://localhost:44300/api/customers"

на вкладке сети

Request URL: https://localhost:44300/api/customers
Request Method: POST
Status Code: 500 
Remote Address: [::1]:44300
Referrer Policy: no-referrer-when-downgrade
date: Thu, 31 Oct 2019 18:34:14 GMT
server: Microsoft-IIS/10.0
status: 500
x-powered-by: ASP.NET
:authority: localhost:44300
:method: POST
:path: /api/customers
:scheme: https
accept: text json
accept-encoding: gzip, deflate, br
accept-language: en-US,en;q=0.9
content-length: 171
...