我们让开发人员向某些产品页面添加自定义代码,以便用户可以从一个产品页面一次订购多个数量的多个产品变体。
问题是脚本运行时间太长...当您点击添加到购物车时,将所有产品添加到购物车需要30-60秒或更长时间。
这太长了。 (see video here https://www.dipietro.biz/wp-content/uploads/2017/04/add-to-cart-slow.webm)
这是因为脚本是逐个而不是同时将每个产品依次添加到购物车。
这是可以修复的吗?
我们需要大幅增加添加到购物车的速度。
我被告知如果我们可以访问位于BigCommerce服务器上的cart.php文件,我们可以添加一些类型的ajax多数组函数,这样可以解决问题但当然我们无法访问BigCommerce的服务器。
此时感谢任何帮助。
谢谢!
答案 0 :(得分:0)
如果没有看到代码,很可能问题就在于,正如您所提到的那样,产品会按顺序添加到购物车中,同时还要等待每个添加到购物车的请求在开始之前完成下一步 - 也就是说,它会将产品添加到购物车,等待成功添加该产品,然后继续将下一个产品添加到购物车。
每个'添加到购物车'操作是对cart.php
文件的单独 POST 请求。这里面临的挑战是,如果在一定时间内发生过多的请求,BigCommerce将阻止这些请求;这是一项BigCommerce安全功能。
虽然您无权访问cart.php
文件,虽然我不知道BigCommerce速率限制/安全功能的具体细节,但最好的方法是确定并设置最大可行性并发请求的数量以及必要的冷却期间,以便最大化对BigCommerce的请求数量,同时还满足安全性/速率限制限制。
例如,您可以将程序设置为同时将3个产品添加到购物车,等待1秒,然后继续添加另外3个产品。这有意义吗?