Это может быть простой сценарий для вас, но не для вас, я пробовал использовать Интернет для этого бу, не нашел ничего полезного.Angularjs - не удалось позвонить в службу веб-api из другого проекта того же решения - VS2015
Сегодня я столкнулся с одним странным сценарием. Я написал веб-сервис api, который возвращает мне объект JSON. Я создал еще один проект для приложения AngularJS под тем же самым решением, но в другом проекте. Когда я звонил в службу $ http из углового приложения, чтобы получить данные из веб-api, он не работал. Первоначально я использовал только хром и firefox. Но когда я открыл угловое приложение в браузере IE, он сработал. Это очень странный сценарий.
В то же самое время я написал один угловой код в проекте web api, и этот угловой код смог получить данные, хотя я открыл угловое приложение в хром или firefox.
Может ли кто-нибудь объяснить, почему хром или firefox не могут получить информацию, если проект отличается.
Угловая Код
var app = angular.module("app", [])
.controller("controller", function ($scope, $http, $log) {
$http({
url: 'http://localhost:37103/api/employee',
method: 'GET',
headers: { 'Content-Type': 'application/json' }
})
.then(function success(response) {
// $scope.employees = response.data;
$scope.data = response.data;
})
.then(function error(response) {
$scope.error = response;
})
});
HTML:
<body ng-controller="controller">
Data:{{data}}
</br>
Error: {{error}}
</body>
WebAPI Метод присутствует в отдельном проекте под тем же раствором
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using MyWebAPIService.Models;
namespace MyWebAPIService.Controllers
{
public class EmployeeController : ApiController
{
// GET: api/Employee
Employee[] employees = {
(new Employee { Id=1,Name="A",Gender="Male",Salary=77777}),
(new Employee { Id=2,Name="B",Gender="Male",Salary=2222}),
(new Employee { Id=3,Name="C",Gender="Female",Salary=55555}),
(new Employee { Id=4,Name="D",Gender="Male",Salary=78787}),
(new Employee { Id=5,Name="F",Gender="Female",Salary=8888}),
(new Employee { Id=6,Name="G",Gender="Female",Salary=4444}),
(new Employee { Id=7,Name="H",Gender="Male",Salary=3333}),
(new Employee { Id=8,Name="I",Gender="Male",Salary=77777}),
(new Employee { Id=9,Name="J",Gender="Female",Salary=45897})
};
public IEnumerable<Employee> Get()
{
return employees;
}
// GET: api/Employee/5
public Employee Get(int id)
{
foreach(Employee e in employees)
{
if(e.Id == id)
{
return e;
}
}
Employee temp = new Employee();
temp.Id = -1;
return temp;
}
}
}
Пожалуйста, разместите соответствующие биты кода. Очень сложно понять, что представляет собой настоящая проблема, не глядя на код. – frishi
@frishi> Код, вставленный в запрос. –