0

我有 2 个 asp.net 项目。一个 API 和一个 Web 客户端项目。测试时,我需要克服相同的来源策略,因此我无法在不同的端口上使用它们进行测试。

我使用 Visual Studio 将 api 映射到:http://localhost/api但其他项目无法映射到http://localhost/. 我要求它成为根的原因是因为应用程序包含对根的引用(表单、脚本等)/。做了一些阅读后,我需要发布到wwwroot,我不想这样做。

我假设的下一个选项是将域映射到我的虚拟目录http://localhost/webhttp://localhost/api=>someDomain.comsomeDomain.com/api. 我该怎么做呢?编辑主机文件不起作用:

http://localhost/web    app.com
http://localhost/api    api.app.com

问题(解决任何一个都对我有用):

  1. 指向http://localhost/解决http://localhost/web引用问题。
  2. 在中创建我的虚拟目录http://localhost/在此处输入图像描述
  3. 将域映射到 localhost 虚拟目录。
4

1 回答 1

2

你可以在 localhost 上设置一个“反向代理”来做你想做的事。

本质上,它将充当中继 - 当客户端连接到 时http://localhost/api,您的代理可以中继该请求以http://somedomain.com/api获取响应,然后将响应传递回原始客户端。从客户端的角度来看,请求是向 localhost 发出的,响应来自 localhost。没有摆弄名称服务器。

IIS 团队发布反向代理

如果您有 IIS6 或不想使用 Microsoft 扩展,还有其他选择。一个是IIRF

于 2012-05-06T02:17:39.120 回答