【问题标题】:What is the correct way to define the Path of WebAPI in a IIS Server在 IIS 服务器中定义 WebAPI 路径的正确方法是什么
【发布时间】:2016-06-18 04:51:47
【问题描述】:

我有一个包含两个子项目的项目。第一个子项目是带有 angularjs 的 SPA,第二个子项目是我的 WebAPI 2。为了在生产环境(IIS 服务器)上获取整个项目,我根据 IIS 上的第二个项目(WebAPI)部署了第一个项目。

SPA 正确启动。但是 WebAPI 始终不发送任何数据。 请求路径为:http://localhost:52131/api/persons

但我认为 localhost 是错误的,因为 IIS 不在我的本地计算机上。我通过远程访问访问服务器。

SPA 在地址上工作:kinga-m/myfirstspa

我必须在服务器上单独部署 WebAPI 还是在项目设置中设置 webapi 是依赖项就足够了?

目前我已经在 Web 选项卡上的 WebAPI 设置中定义了项目 url “http://localhost:52131/”,但我认为这是错误的。

【问题讨论】:

    标签: c# asp.net angularjs iis asp.net-web-api


    【解决方案1】:

    @Yuro,基本上在 IIS 上部署 WebAPI 并不是一门火箭科学。您可以在同一个 IIS 服务器上同时拥有 SPA 应用程序和 WebAPI 应用程序,也可以不同,没关系。

    WEB API:确保您已在默认网站和指向 Web API 文件夹下创建了正确的“应用程序”,以及分配了正确的应用程序池 - 用于正确的 .NET 版本。完成后,您可以使用 fiddler URL 直接测试您的 API,例如:

    http://localhost/[applicationName]/api/Persons

    SPA:您可以在默认网站下创建另一个应用程序并指向 SPA 网站。还要确保将相同的 URL 配置到对 WEB API 的 SPA 调用中。因此,如果上述 URL 单独为您工作,那么它肯定会通过 SPA 工作。

    建议:始终单独测试 API 调用。

    希望您也已在 Web api 中启用 CORS。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-09-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-13
      • 2019-03-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多