Member 10723373 Ответов: 0

Проблема в angularjs2 с restful web API


Я делаю AngularJS2 с RESTful веб-API , и получать некоторые ошибки в консоли при вызове HTTP-запрос POST. Ошибки перечислены ниже,
Angular 2 is running in the development mode. Call enableProdMode() to enable the production mode.
XMLHttpRequest cannot load http://localhost:64336/api/User/UserLogin. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:51663' is therefore not allowed access.
EXCEPTION: Response with status: 0  for URL: null

Надеюсь, вы поможете

Что я уже пробовал:

Я включил cors в веб-API, например
конфигурация веб-API
public static class WebApiConfig
   {
       public static void Register(HttpConfiguration config)
       {
           // Web API configuration and services
           config.EnableCors();

           // Web API routes
           config.MapHttpAttributeRoutes();

           config.Routes.MapHttpRoute(
               name: "DefaultApi",
               routeTemplate: "api/{controller}/{action}/{id}",
               defaults: new { id = RouteParameter.Optional }
           );
       }

Контроллер
[EnableCors(origins: "http://localhost:64336", headers: "*", methods: "*")]
   public class UserController : ApiController
   {
       public HttpResponseMessage UserLogin([FromBody] LoginRequestData objValidate)
       {
           UserModelManager _UserModelManagerr = new Models.UserModelManager();

           return Request.CreateResponse(HttpStatusCode.OK, _UserModelManagerr.Login(objValidate), GetJSONFormatter());

       }


Приложение AngularJS
login(username: string, password: string) {
         let toAdd = JSON.stringify({ Email: username, password: password });
       var headers = new Headers();
        headers.append('Content-Type', 'application/x-www-form-urlencoded');
        return this._http.post(this._apiUrl,
            toAdd,
            { headers: headers })
            .map((response: Response) => <user>response.json()); 
    }

0 Ответов