И в моем файле контроллера
ользуюAngular 6+
для небольшого сайта, представляющегоCRUD
кSQL Database
, я знаюAngular
этоclient-side framework
поэтому я создал веб-сервис, используяVisual Studio 2017
проект, который я использовал, являетсяweb application ASP.NET Core
и так как я проверяю это вlocalhost
, Angular
пробегает4200 port
и мой сервис в настоящее время включенport 53819
В связи с этим у меня есть (или, наконец, попытаться)Cross-Origin Resource Sharing (CORS)
установив пакет CORS NUGget на мойwebservice
и включение его на уровне контроллера, как показано:
...
namespace CIE_webservice.Controllers
{
[Produces("application/json")]
[Route("api/CIE")]
[EnableCors(origins: "http://localhost:4200/", headers: "*", methods: "*")]
public class CIEController : Controller
{
[HttpGet]
public IEnumerable<string> Get()
{
return new string[] { "value1", "value2" };
}
...
на моемAngular App
Я использую простуюajax
запрос следующим образом:
$.ajax({
url: 'http://localhost:53819/api/CIE/',
success: function() { console.log(" OK "); },
error: function() { console.log(" Error "); }
});
Насколько я могу получить учебники, мой код в порядке, но все равно получаю ошибку:
Failed to load http://localhost:53819/api/CIE/: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:4200' is therefore not allowed access.
Даже если Ajax-запрос имеет ответ 200 OK, а предварительный просмотр показывает ответ json:
Может быть, я что-то упустил, или я не очень хорошо понимаю концепцию ... Если мне нужно больше информации для решения моего дела, не стесняйтесь спрашивать
Заранее спасибо.