我在IIS服务器上部署了一个有角度的生产版本,可以通过localhost:80 / myApp以及任何人从外部访问它。
当数据库托管在另一台服务器上并且我使用软件(Rocket u2)访问该服务器时,它使用url localhost:8080 / datalist发出get请求以填充页面,当我进入该服务器时可以看到数据localhost:8080 / datalist,所以我知道我已连接到该服务器。
当我在本地主机80上运行我的应用程序时,该页面不会出现任何问题,但是当我通过可访问角度服务器但无法访问数据库服务器的外部计算机运行该页面时,我会遇到一些错误。
首先,我尝试在Web.config文件中启用CORS错误,但仍然收到黄色通知。 而且我还得到一个错误名称,该名称未为localhost:8080解析
是否需要以其他方式设置angular才能获取这样的数据,或者是在iis服务器设置中?
答案 0 :(得分:0)
可能发生的很多事情都会使这些错误出现。有时我遇到过类似的问题,如果我是你,这是我首先要检查的事情。
检查情况并确定故障原因的好工具是:Fiddler
另一个用于测试问题是否仅与CORS相关的chrome扩展程序是Moesif chrome extension
如果您不了解该技术是什么,那么如果您稍微了解一下CORS,也可能会帮助您弄清楚问题出在哪里。这是一个很好的参考:Mozilla Developper Cross-Origin Resource Sharing (CORS)
这个山姆祝你好运,一开始可能有点不知所措,但是你会费劲的;)
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="Angular Routes" stopProcessing="true">
<match url=".*" />
<conditions logicalGrouping="MatchAll">
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
</conditions>
<action type="Rewrite" url="/" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>