自定义端点中的SugarCRM查询参数

背景

我正在SugarCRM中构建一个自定义REST端点,该端点将两个模块连接在一起并返回结果。我需要允许用户以查询参数的形式传递可选数据。当前,端点如下所示:


http://base-url.com/api/customer/{customer_id}/branch/{branch_id}/offset/{offset}

但是,这要求我传递一个偏移值。相反,我希望端点看起来像


http://base-url.com/api/customer/{customer_id}/branch/{branch_id}?offset={offset}

我检查了SugarCRM开发人员文档,也在线检查,但是找不到使用查询参数的确定示例。


我的密码

下面是我的代码。此代码示例与上面列出的第一个端点匹配。我的目标是将offset参数修改为查询字符串,而不是路径变量


<?php


if( !defined('sugarEntry') || !sugarEntry ) 

    die('Not A Valid Entry Point');


class LinkLeadsApi extends SugarApi

{

    public function registerApiRest()

    {

        return array(

            'LinkLeadsEndpoint' => array(

                'reqType' => 'GET',

                'noLoginRequired' => false,

                'path' => array('customer', '?', 'branch', '?', 'offset', '?'),

                'pathVars' => array('customer', 'customer_id', 'branch', 'branch_id', 'offset', 'offset_num'),

                'method' => 'GetLinkLeads',

                'shortHelp' => 'Retrieve Leads for Latham Link',

                'longHelp' => 'Retrieve Leads for Latham Link'

            )

        );

    }


    public function GetLinkLeads($api, $args)

    {

         $seed = BeanFactory::newBean('w002_ConsumerLeads');


         $q = new SugarQuery();

         $q->from($seed);

        $q->limit($args['offset_num']);


        return $q->execute();


    }

}


?>


白衣染霜花
浏览 148回答 1
1回答

开心每一天1111

您的查询字符串仍然可以通过$ _REQUEST变量在同一PHP接口中访问,但是它们也可以在$ args中使用:public function GetLinkLeads($api, $args){&nbsp; &nbsp; $GLOBALS['log']->fatal("args: " . print_r($args, true));&nbsp; &nbsp; $GLOBALS['log']->fatal("request: " . print_r($_REQUEST, true));}网址:{sugar} / rest / v10 / customer / 1 / branch / 2 / offset / 3?qs = 4sugarcrm.logWed Apr 24 12:06:27 2019 [19200][-none-][FATAL] args: Array(&nbsp; &nbsp; [__sugar_url] => v10/customer/1/branch/2/offset/3&nbsp; &nbsp; [qs] => 4&nbsp; &nbsp; [customer] => customer&nbsp; &nbsp; [customer_id] => 1&nbsp; &nbsp; [branch] => branch&nbsp; &nbsp; [branch_id] => 2&nbsp; &nbsp; [offset] => offset&nbsp; &nbsp; [offset_num] => 3)Wed Apr 24 12:06:27 2019 [19200][-none-][FATAL] request: Array(&nbsp; &nbsp; [__sugar_url] => v10/customer/1/branch/2/offset/3&nbsp; &nbsp; [qs] => 4)
打开App,查看更多内容
随时随地看视频慕课网APP