我有一个简单的测试Web,可以正常工作。当我运行它并在浏览器中输入http://localhost:xxxxx/api/user时,它返回一个JSON空数组,当我用Fiddler测试它时,它具有完整的功能。但是当我尝试用Chrome控制台测试它时(通过对http://localhost:xxxxx/api/user的GET请求),我会得到一个“连接失败!检查您的连接,然后再试一次”错误。
Api控制器:
public class UserController : ApiController
{
private UserRepository repository = new UserRepository();
public int Put(int id, [FromBody]int amount)
{
var user = repository.GetByID(id);
if (user == null) return -1;
user.Total += amount;
repository.Save(user);
return user.Total;
}
public int Post([FromBody]CreateUserRequest request)
{
var user = new User { Goal = request.Goal, Name = request.Name, Total = 0 };
repository.Add(user);
return user.UserId;
}
public IEnumerable<User> Get() { return new List<User>(repository.GetAll()); }
public User Get(int id) { var user = repository.GetByID(id); return user; }
public class CreateUserRequest
{
public string Name { get; set; }
public int Goal { get; set; }
}REST控制台以前使用过这个测试Web。我在网上唯一能找到的引用未经签名的证书。我已经为IIS中的本地主机创建了一个签名的证书,但是我删除了它,重新启动了计算机,而REST控制台仍然返回相同的错误。这并不重要,因为Web API正在IIS Express中运行。我还在本地机器上使用其他Web进行了尝试,并得到了相同的错误。
有没有人知道这个问题的可能来源或我如何排除它?正如我说过的,Web在使用Fiddler进行测试时是完全功能的。Web是使用VS 2012在Windows 7终极工作站上创建的,目前正在运行。
发布于 2014-06-14 16:22:00
后来我注意到,当我在Chrome中运行Visual的应用程序时,它会重定向到https (即使是不使用SSL的应用程序)并生成SSL错误。
我清除了Chrome中的所有浏览数据,并清除了Chrome和REST控制台的问题。
https://stackoverflow.com/questions/24100093
复制相似问题