Я сделал простой ASP. NET Базовый веб-API-проект, и у меня есть такой контроллер:
// GET: api/Employees/5
[HttpGet("{id}")]
public async Task<ActionResult<Employees>> GetEmployees(int id)
{
var employees = await _context.Employees.FindAsync(id);
if (employees == null)
{
return NotFound();
}
return employees;
}
Когда я запускаю его и от go до https://localhost: 44370 / api / employee / 3 в моем браузере я вижу данные из БД:
employeeId 3
lastName "Leverling"
firstName "Janet"
title "Sales Representative"
titleOfCourtesy "Ms."
и вижу их при отправке GET-запроса на тот же адрес https://localhost: 44370 / api / employee / 3 через почтальона:
{"employeeId":3,"lastName":"Leverling","firstName":"Janet","title":"Sales Representative","titleOfCourtesy":"Ms."}
Так что я считаю, что все хорошо на стороне "бэкэнда".
Также у меня есть приложение React, созданное с помощью команды create-response-app и запускается с помощью «npm start» в VS Code. Он начинается с адреса http://localhost: 3000 / . Итак, мои «backend» и «frontend» понятия не имеют друг о друге, потому что они были созданы отдельно с использованием разных инструментов, и я тоже запускаю их отдельно.
Что ж, теперь я хотел бы получить некоторые данные от Веб-API и визуализировать его в моем приложении реакции. Я использую этот код:
componentDidMount(){
$.ajax({
type: 'GET',
url: "api/employees/3",
error: (jqXHR, errorText) => alert('Error: ' + jqXHR.status + '(' + jqXHR.statusText + ')'),
success: (data) => alert(data)
})
}
И это не работает. Когда я отправляю на api/employees/3
, я получаю какие-то странные HTML: странные html
, а когда на https://localhost:44370/api/employees/3
я получаю ошибку 0.
Так , Я думаю, проблема может быть в следующем: а) я должен вернуть не только сотрудников, но и сделать какое-то явное преобразование в JSON или что-то в этом роде б) я должен сделать некоторые дополнительные настройки для моего ASP приложения c) я должен отправить запрос на правильный адрес или что-то еще, idk. Помогите пожалуйста.