[英]Any way to disable / not use oAuth on Magento's REST API, when GET/POST/PUT on customers?
我是Magento
新手。 是否可以(临时?)在Magento
禁用对oAuth
的要求,并仍然检索客户数据。 通过REST API?
因此,基本上可以在不使用oAuth
情况下通过HTTP发出GET,PUT请求?
网址: http:// magento / api / rest / customers?limit = 2
我收到“访问被拒绝(403)”错误。
注意:我能够阅读产品。
请尝试这个。可能会起作用。
转到Magento管理面板,依次选择“系统”->“ Web服务”->“ REST属性”->“选择用户类型客户”,然后选择“资源访问”作为“所有”并保存。 并立即检查: http:// magento / api / rest / customers?limit = 2
您可以转到app / code / core / Mage / Api2 / Model / Auth.php,将const DEFAULT_USER_TYPE ='guest'更改为const DEFAULT_USER_TYPE ='admin',然后转到app / code / core / Mage / Api2 / Model / Auth /Adapter.php并更改返回(object)array('type'=> Mage_Api2_Model_Auth :: DEFAULT_USER_TYPE,'id'=> null)以返回(object)array('type'=> Mage_Api2_Model_Auth :: DEFAULT_USER_TYPE,'id'= > 1) 。
这会将默认使用者设置为Admin,您将能够使用管理员权限访问所有API。 您也可以将其更改为“ customer”,并在Adapter.php中提供任何客户ID。
您需要授予访客访问客户资源的权限。
Havent尝试过了,但是我建议您扩展模块
将具有etc / api2和model / api2 / customer / rest /的 法师/客户复制到本地模块,以免修改核心数据。
然后修改etc / api2,这样您就可以访问来宾呼叫并添加属性权限
在api2 / customer / rest上添加所需的模型,以便guest 虚拟机可以处理回调,我猜想只需复制admin,重命名为guest 虚拟机并重命名v1中的类名即可解决问题。
您可以在Magento中为REST API实现自己的身份验证适配器,而不是oAuth。 您可以在本文中找到更多详细信息。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.