繁体   English   中英

在IIS服务器中定义WebAPI路径的正确方法是什么

[英]What is the correct way to define the Path of WebAPI in a IIS Server

我有一个带有两个子项目的项目。 第一个子项目是带有angularjs的SPA,第二个子项目是我的WebAPI2。为了在生产环境(IIS Server)上获得整个项目,我根据IIS上的第二个项目(WebAPI)部署了第一个项目。

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

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

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

我是否必须在服务器上分别部署WebAPI,或者是否足以在项目设置中设置webapi是依赖项?

目前,我已经在选项卡Web-> IIS Express的WebAPI设置中使用项目URL“ http:// localhost:52131 / ”定义了,但是我认为这是错误的。

@Yuro,基本上,在IIS上部署WebAPI并不是一门科学。 您可以将SPA应用程序和WebAPI应用程序都放在同一IIS服务器上,也可以在不同的IIS服务器上,这没关系。

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

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

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

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM