Angularjs CDN(Akamai),具有RESTfull api和HTTP删除方法的源应用程序;501不支持“;
托管在上的基于AngularJS的应用程序通过管理应用程序域名的CDN(Akamai)网络访问。CDN网络被配置为在1天内为所有/*对象缓存TTL,但TTL=0的/api/*除外。/api/*是源应用程序的RESTful api,angularJS部分使用HTTP GET、POST和DELETE调用该api。获取并发布工作正常,但HTTP DELETE至www.killerapp.com/api/orders/00001返回HTTP 501Angularjs CDN(Akamai),具有RESTfull api和HTTP删除方法的源应用程序;501不支持“;,angularjs,http,cdn,rackspace,akamai,Angularjs,Http,Cdn,Rackspace,Akamai,托管在上的基于AngularJS的应用程序通过管理应用程序域名的CDN(Akamai)网络访问。CDN网络被配置为在1天内为所有/*对象缓存TTL,但TTL=0的/api/*除外。/api/*是源应用程序的RESTful api,angularJS部分使用HTTP GET、POST和DELETE调用该api。获取并发布工作正常,但HTTP DELETE至www.killerapp.com/api/orders/00001返回HTTP 501 问题是:私有CDN网络应该阻止HTTP删除,还是有办法
问题是:私有CDN网络应该阻止HTTP删除,还是有办法通过CDN的设置来修复它 从终端使用curl语句尝试请求。将akamai标题添加到其中,以便您可以查看501响应的来源
通常,POST/DELETE/PUT请求会从Akamai边缘服务器传回源站,因此我怀疑您的应用程序出于某种原因返回了错误响应。查看响应标题可能有助于缩小范围。在akamai配置中,删除默认被阻止,如果您希望通过,则应在您的property manager(我假设您使用的是property manager)上创建一条规则,并向其添加“允许删除”行为,您可以通过在XML中搜索此标记来检查它是否已启用:
<security:allow-delete>on</security:allow-delete>
on
建议:不要全局“允许删除”,创建特定规则并尽可能多地限制。默认情况下,POST/delete/PUT被阻止确定akamai配置,因此您必须添加规则以允许它们