处理从网站到API提供商的AJAX请求的最佳实践

因此,我实现了一个API提供程序,可供Web应用程序和移动应用程序访问。 很可能这不是一个大型项目,但我想最大化我的学习经验,并尽我所能。 无论如何,根据我的理解,似乎最好将API提供程序服务和实际网站放在不同的域上以使扩展更容易。 例如,twitter的网站为twitter.com和api.twitter.com。 一个直接的问题是使用AJAX处理跨域问题。 根据我的收集,有两种方法可以实现跨域AJAX JSONP:我听说过,但是除了这个名字之外我不知道多少 代理服务器:所以,我的网站建立在ASP.NET MVC之上,我正在考虑创建一个APIProxy控制器来处理所有跨域API请求。 这样,我会通过$ .ajax(设置)进行AJAX调用,然后传入与APIProxy控制器对应的网站URL。然后,APIProxy控制器将进行适当的POST服务器调用并处理JSON响应并将响应返回给AJAX回调函数。 我听说flXHR关于我不想使用Flash,因为像iPad或任何大量移动浏览器这样的设备不支持Flash。 无论如何,我只是想问一下在单独的域或子域上使用API​​提供程序管理网站的一些最佳实践。     
已邀请:
当您请求一些JSON时,它返回一个对象或数组。脚本标记不受相同域规则的约束。因此,做一个AJAX调用,你基本上会这样做:
<script src="Http://api.example.com?param1=something&etc"></script>
那将加载JSON,它将作为JavaScript执行。 ......但是一个简单的对象或数组“执行”本身并不是很有用。因此,当您请求JSON时,还包括回调函数的名称。如果提供者看到提供了回调,而不是仅返回JSON,它实际上返回JavaScript:JSON作为参数传递给您的函数。 然后,当脚本加载时,调用您的函数(您已定义的函数),并使用JSON进行操作。 那是JSONP。 参考书目 牛顿,亚伦。 “Request.JSONP。” Clientcide。 2009年12月7日。网络。 2011年1月28日。     

要回复问题请先登录注册