我正在尝试使用常规 HTTP 请求从 NodeJS 应用程序调用其中一个 Magento REST API(比如产品 api)。我知道 Magento API 需要 OAuth 来验证用户/应用程序,这是我有点迷路的地方。
对于 Magento 或任何 OAuth 应用程序,使用该应用程序的最终用户必须单击“授权”才能让该应用程序接收 token ,然后该应用程序将能够直接与 Mangento API 通信。
在我的例子中,我们讨论的是 2 个服务器,Magento 和 NodeJS,它们将相互通信。因此,没有用户参与排序“单击”授权按钮并验证授权请求。
我想要实现的目标是从 Magento 获取产品数据,将其存储在数据库中,然后进行一些更改,然后通过 NodeJS REST API 访问它。 (这是一个硬性要求,我无法更改)。
我的问题是,我们是否必须编写不需要 OAuth 的自定义 Magento REST API,或者可能需要常规的基本 HTTP 身份验证(用户名/密码)。或者有一种方法可以使用 OAuth 并直接验证我的 Node 应用程序吗?
我希望我的问题很清楚,如果不清楚请告诉我,我会尽力解决。谢谢!
最佳答案
在与类似情况搏斗之后,我决定使用 Magento 的 SOAP API。就身份验证而言,您所要做的就是在 Magento 后端设置一个 API 用户,然后在您的 API 调用中使用用户名/密码(我想,这已经有一段时间了)。不确定这是否适合您的用例,但它让我省去了很多 OAuth 的麻烦。
关于node.js - 使用 OAuth 通过 REST API 从 Magento 到 NodeJS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25044210/