为移动客户端创建Web代理(HTML5 Web App)

时间:2013-07-04 10:05:08

标签: wcf mobile webproxy

我目前正在使用与第三方API交互的WebWorks为Blackberry开发HTML5移动网络应用。

不幸的是,由于跨域请求限制,我无法直接从移动应用程序使用API​​,所以我正在考虑开发一个与API交互并为Web应用程序提供服务的Web代理。

由于我从未做过这样的事情,我想得到一些建议,我将使用Microsoft技术(.NET)来达到我的目的。

我正在考虑一个WCF服务,它会向API发送所有请求,而移动客户端会连接到WCF服务以获取数据,但我认为无论如何我都会有相同的跨域请求限制,因此它可能不会工作

1 个答案:

答案 0 :(得分:1)

首先,请与您的第三方API提供商核实是否支持CORS。如果他们这样做,您可以绕过相同的原始政策限制。假设他们不这样做,您可以使用ASP.NET Web API而不是WCF创建外观服务。 ASP.NET Web API旨在为更广泛的覆盖范围创建HTTP服务,并且不涉及SOAP。

在ASP.NET Web API中,您可以使用HttpClient进行HTTP调用,只需将请求传递给第三方API,然后将响应回显给您的应用。正如您所说的那样,相同的原始策略限制也适用于此案例,但您可以更好地控制服务器端。您可以在ASP.NET Web API中实现CORS,这样您的BB WW应用程序仍然可以调用您的Web API,尽管它们的来源不同。