如何在没有OAuth的情况下异步使用Magento的API?

时间:2012-11-27 22:20:31

标签: php api magento rest oauth

我正在努力将Magento商店与现有的桌面销售点软件集成。我的想法是,这个桌面程序将通过Magento的REST API连接以收集产品列表,库存变化等,并且还将通过API端点提交新产品和其他更新。

当我不希望负责PoS的人知道API凭证或者不想打扰提示时,问题就出现了。最好的方法是在配置文件中设置它们。

我考虑过在后台加载API授权页面并自动将凭据发布到登录表单。但这看起来很糟糕。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

不是解决方案,而是在这件事上有一些经验......

Magento的API可能很慢,用户将永远等待任务完成,尤其是在服务器负载不足的情况下。我们使用另一个使用Magento的SOAP API的应用程序,我使用java构建它来处理magento和POS之间的所有更新/下载。这样,用户不会等待缓慢的响应,也不会因连接丢失而停止。

我们已经采用了您的队列approcach,并且有一个应用程序具有队列的另一个原因是它处理来自所有用户的所有更新并且仅允许1个任务一次执行。您需要这样做以避免数据库锁定。例如两个用户修改产品,您会收到表锁错误,更新失败。您还可以通过向服务器发送大量单个用户请求来使服务器过载。我们仍然有事件驱动的处理,而不是同步脚本,让我们的POS向我们的本地应用程序发送消息,指示应用程序有关任务,它只是将任务排队等待处理。我们的应用程序没有任何用户界面,我在服务器上将其作为系统服务运行,用户凭据存储在配置文件中。