首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Magento Rest-Api类别列表

Magento Rest-Api类别列表
EN

Stack Overflow用户
提问于 2015-03-02 10:40:33
回答 2查看 2K关注 0票数 1

我想为Magento Rest Api创建一个类别列表扩展。

在堆栈溢出处有一个线程:

Create new magento Rest api to get category list in magento

但它只显示了一小部分不完整的代码,这些代码不起作用。看起来,开发人员刚刚从Marko Andreini的以下扩展中复制了一个简短的片段:

https://github.com/marcoandreini/magento-extendedrestapi

但我不能让它和Magento 1.9一起工作。

在调用/magento/api/rest/ -access时,我总是得到一个拒绝的403个

如果有人知道问题出在哪里以及如何解决问题,我会非常高兴的。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-03-31 14:04:02

这是为我工作的:

代码语言:javascript
复制
                    $_helper = Mage::helper('catalog/category');
                    $_categories = $_helper->getStoreCategories();

                    $result = array();


                    if (count($_categories) > 0) {

                        $i = 0;
                        foreach ($_categories as $_category) {

                            $katId = $_category->getId();

                                $result[$i]['katId'] = $katId;
                                $result[$i]['url'] = $_helper->getCategoryUrl($_category);
                                $result[$i]['katName'] = $_category->getName();
                                $result[$i]['katSubs'] = null;

                                $_category = Mage::getModel('catalog/category')->load($_category->getId());
                                $_subcategories = $_category->getChildrenCategories();

                                $j = 0;
                                if (count($_subcategories) > 0) {

                                    foreach ($_subcategories as $_subcategory) {

                                        $subKatId = $_subcategory->getId();
                                        $subKatName = $_subcategory->getName();

                                        if ($subKatId && $subKatName && $subKatName != "") {

                                            $result[$i]['katSubs'][$j]['parentKatId'] = $katId;
                                            $result[$i]['katSubs'][$j]['subKatId'] = $subKatId;
                                            $result[$i]['katSubs'][$j]['url'] =  $_helper->getCategoryUrl($_subcategory);
                                            $result[$i]['katSubs'][$j]['subKatName'] = $subKatName;

                                            $j++;
                                        }
                                    }

                                }

                            $i++;
                        }
                    }
票数 0
EN

Stack Overflow用户

发布于 2015-12-03 08:27:06

在回应以上Jet的帖子时,403的访问意味着“禁止”。确保身份验证工作正常,正确设置角色和属性。其他选择是在etc/etc 2.xml下创建“来宾”特权。

代码语言:javascript
复制
<privileges>
   <admin>
      <retrieve>1</retrieve>
   </admin>
   <guest>
      <retrieve>1</retrieve>
   </guest> 
</privileges>

然后创建另一个文件夹Model/Api2/Category/Rest/Guest/

将Model/Api2 2/ guest /Rest/Admin/中的V1.php复制到新创建的来宾文件夹中。不要忘记将类名更改为: namespace_ModuleName_Model_Api2_Category_Rest_Guest_V1

我想你可以走了

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28807757

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档