ajax - 以编程方式将产品添加到用户的远程 magento 购物车

标签 ajax magento e-commerce commerce

我有一个网页,用户可以从我的页面添加来自 3rd 方商业网站(amazon、shopify、magento 等)的产品。用户选择多个产品然后单击结帐,然后页面将他们重定向到第 3 方商务网站的结帐页面。

这适用于亚马逊,因为他们有一个我们代理的服务器端 API。输入:一堆产品,输出:结帐 URL。很简单,而且效果很好。

但是,我们坚持使用 magento。

  • 没有用于将产品添加到用户远程购物车的公共(public) API
  • 未记录的 API 只支持一次添加单个产品,因此支持多个产品需要多次 API 调用(速度很慢)
  • 大多数 magento 站点始终不支持 HTTPS 和/或重定向到 HTTP,我们的站点使用 HTTPS。因此,它实际上不起作用。
  • 我们在尝试 AJAX 请求时遇到了 CORS 问题——我们目前正在使用 iframe 破解它。
  • 第一个请求给了我们一个“无 cookie”错误页面,而不是实际将其添加到购物车中。

  • 有没有办法解决这个问题? magento 支持 CORS 请求吗? magento 对 HTTPS 的支持是什么?

    我看到了http://community.magento.com/t5/Programming-Questions/API-Redirecting-user-to-magento-instance-to-view-their-cart/m-p/9113#M2029这需要我们的客户安装扩展程序,但这可能是 Not Acceptable

    最佳答案

    尽管 Magento 中没有开箱即用的 API 功能支持此功能,但可以通过编写一个小的 API 模块来扩展 Magento 以支持此功能,安装在 Magento 中以使其工作。通过创建 API 扩展,您可以制定规则,例如接受要添加到购物篮的多个产品。

    Magento 的文档一直很差,通常像我这样的开发人员必须调试和单步调试代码,以了解特定功能的实际工作方式。一旦你变得足够熟练,你就会开始看到一个“更大的图景”,它可以让你“预测”Magento 的行为,并且通常可以让你跳过一步一步的调试调查。

    我建议您从专业开发人员那里获得帮助来构建它(我会说至少有 2-3 年的后端开发经验),并让经过认证的 Magento 开发人员来帮助您:业余爱好者可能会做出可行的解决方案花更少的钱,但从长远来看,你会付出代价,更不用说你的模块在 Magento 版本和版本之间的可移植性,以及与安全相关的问题(XSS、SQL 注入(inject)等)。

    Magento 支持 HTTPS(实际上,这取决于站点的系统管理员,以正确配置 Web 服务器),并且有一点 CORS 支持(默认情况下,实现“同源”策略)。更改 CORS 也将是一项开发任务,尽管我真的不知道这与 REST 或 SOAP API 有什么关系。

    另外,请注意 Magento 严重依赖 cookie 来支持 session (并且针对客户 session 将购物篮存储在数据库中)。

    这就是我真正能说的,提供的关于您的实际问题的信息很少。

    如果您需要更多信息,我很乐意提供帮助,但我需要更多详细信息,以便找出最佳解决方案。

    关于ajax - 以编程方式将产品添加到用户的远程 magento 购物车,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32341481/

    相关文章:

    magento - 如何创建自定义 adminhtml 主题 magento

    mysql - 订单表的电子商务数据库设计

    java - jQuery AJAX 调用 Spring Controller 时出现 404 not found 错误

    php - php foreach 循环中的 Ajax 调用

    xml - 使用之前/之后放置 block 的 Magento XML 几乎不起作用

    php - 通过 ORM 将数据导入 Magento 的性能是否可以接受,或者直接 SQL 是唯一的选择吗?

    jquery - 调用 onClick 函数后停止 href 链接

    php - 高流量 php ajax 聊天设计选项

    python - 奥斯卡优惠应用程序覆盖福利功能冲突错误

    e-commerce - schema.org 标记是否需要产品价格?