如何在没有对网址进行硬编码的情况下,在另一个项目中调用API但使用相同的解决方案?

时间:2016-03-27 05:09:05

标签: angularjs asp.net-web-api

我有两个项目。一个用于我的前端角度代码。另一个用于Web API。当我在前端项目中时,我想在我的其他项目中调用API。

我见过的Web API教程显示了一个涉及/ api的相对url,例如:     $ http.get( “/ API /琐事”)

如果javascript与Web API在同一个项目中,那么效果很好,但它不适用于我的解决方案。

我可以将url硬编码到我的API的localhost端口,但它工作正常,但当我将应用程序部署到Azure时,这当然不起作用。我该如何处理这些网址?

谢谢。

1 个答案:

答案 0 :(得分:0)

当您使用完整网址(http://..。)创建$ http时,它会直接查看给定的地址。但是当你指定相对路径(没有http://..。)时,它会查看你当前的网站+给定的相对路径网址。 所以如果您的api也托管在同一个网站,您仍然可以将引用设为$ http.get(“/ api / trivia”),或者正如您所说,如果您知道在Azure中托管您的网站的位置你可以在你的脚本中硬编码。