我正在使用 WCF 服务替换旧的 CMS 托管 API。
对于旧系统/数据库中的每个客户端站点,它的工作方式如下:
clientdomain.com从hostingdomain.com/clientdomain/api.xml的 URL 中提取其内容 (XML) (.xml 扩展名实际上是一个经典的 ASP 页面,它基于 clientdomain 导出为 XML)
例如:来自 hostingdomain/clientdomain/photos/api.xml 的 clientdomain.com/photos 提要
并且所有客户端域都使用相同的 api.xml 文件,如 hostingdomain/ clientdomain2 /photos/api.xml等。
我猜在界面设置中像:
[OperationContract]
[WebInvoke(Method = "GET",
ResponseFormat = WebMessageFormat.Json,
BodyStyle = WebMessageBodyStyle.Wrapped,
UriTemplate = "*clientdomain*/photos")]
//method
List<APIContentObject> GetPhotosBySiteID();
我可以/如何将URITemplate中的客户端域更改为从我从数据库获得的列表/数组中提供数据?...或类似的东西,以便它知道 /client1/photos 和 /client2/photos 可用作 UriTemplates?还是我遗漏了什么?...我在 WCF 中遇到了整个 URI/URL 问题...
我可以做一些不同的事情并使用像photos.clientdomain.com这样的东西并将所有域添加为主机头和......??......沿着这条路线?无论是 WCF 和所有爵士乐中的最佳实践和安全。
这样做的目的是最终移动应用程序和网站都将从这个 WCF 中提取。(以及随后的推/拉管理应用程序)
旧系统使用了一些非常有趣的 IIS 诡计和经典的 asp 东西,而我将留下一些东西......所以......有什么想法吗?