我创建了WebApi项目并包含了示例Get方法。 当我尝试使用来自Firefox / Chrome浏览器的url(http://localhost:port/api/video)访问get方法时,我收到以下消息: -
无法访问此网站 localhost拒绝连接。 ERR_CONNECTION_REFUSED
当我创建ASP.NET Web应用程序并尝试在浏览器中使用localhost查看aspx页面时,它将显示该页面。
当我尝试使用Visual Studio运行WebAPI时,它会在Google Chrome中打开网址(http://localhost:port),其中包含HTTP错误403.14 - 禁止错误。
我在Visual Studio 2015社区中使用IIS Express。操作系统是Windows 10。
我试图关闭防火墙并从hosts.config文件中删除#但它从未起作用。
在过去2-3天内寻找同样的问题后,我现在有什么办法吗?
请在下面找到我的代码: -
的Global.asax.cs
public class WebApiApplication : System.Web.HttpApplication
{
protected void Application_Start()
{
GlobalConfiguration.Configure(WebApiConfig.Register);
}
}
VideoController.cs
public class VideoController : ApiController
{
public IEnumerable<string> Get()
{
return new string[]{ "Value1", "Value2"};
}
}
WebApiConfig.cs
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}/{id}",
defaults: new { id = RouteParameter.Optional }
);
}
}
答案 0 :(得分:1)
最后,我可以在localhost中运行WebAPI。
我已检查控制面板中的所有选项 - &gt;打开或关闭Windows功能 - > Internet信息服务 - &gt;万维网服务 - &gt;应用程序开发功能|通用HTTP功能|安全性。
检查所有这个选项允许我在从Visual Studio 2015调试Web API应用程序时从GET请求获得响应。但是一旦我停止在Visual Studio中调试应用程序,GET请求的响应也会变得很糟糕。我发现当我在Visual Studio中停止调试时,IIS express也停止了。 在阅读了几篇帖子后,我发现我必须取消选中&#34;启用编辑并继续&#34;来自Web API Project-&gt; Properties-&gt; Web-&gt;启用编辑和继续。
但即使我根本不启动Visual Studio,我也必须使用GET响应,所以我最终在IIS中部署了我的网站。
答案 1 :(得分:0)
对我来说,重启电脑后出现“本地主机拒绝连接”的问题。
解决我的问题是我点击了项目属性页中的“创建虚拟目录”按钮。
Web API Project->Properties->Web->"Create Virtual Directory"
答案 2 :(得分:0)
您也可以关闭 Visual Studios,删除 .vs 文件夹(可能被隐藏),然后重新编译应用程序。这对我有用。