无效参数:自定义端点

我是甘蔗新的
我创建了一个称为顺序的自定义模块(源IP)及其正常工作。我为订单模块创建了一个自定义3d彩吧论坛,我将该端点暴露在不同的服务器中的不同应用程序。使用邮递员测试了3d彩吧论坛,并正常工作。每当应用程序(目标IP)匹配SugarCRM中的顺序3d彩吧论坛时,SugarCRM都会抛出无效参数(错误代码422)。
以下是回应
{"error":"invalid_parameter","error_message":"您请求中的参数无效。" }
使用的版本是10.3(企业)

如何解决这个问题呢 ?

  • 你能分享方法的内容吗? 注册该自定义3d彩吧论坛?您还可以共享URL外部3d彩吧论坛呼叫吗?

    问候

    andr.é Lopes
    Lampada Global.
    Skype:Andre.lampada
  • 如果您的呼叫在邮递员工作但不是来自其他服务器,我将检查您是否正确传递身份验证。

    您是否使用curl并将OAuth令牌传递为参数而不是将其添加到标题中?

    curl_setopt($curl_request, CURLOPT_HTTPHEADER, array("Content-Type: application/json", "oauth-token: {$oauthtoken}"))

  • Hi André Lopes,

    感谢你的回复。
    以下是我的网址和注册

    URL:  http://{{url}}/ Sugarcrm /休息/ v10 / ord_orders / updateordermethod

    方法 :

    public function registerApiRest()
        {
            return array(
                'MyGetEndpoint' => array(
                    //request type
                    'reqType' => 'PUT',
    
                    //set authentication
                    'noLoginRequired' => false,
    
                    //endpoint path
                    'path' => array('Ord_Orders','UpdateOrderMethod'),
    
                    //endpoint variables
                    'pathVars' => array('', ''),
    
                    //method to call
                    'method' => 'UpdateOrderMethod',
    
                    //short help string to be displayed in the help documentation
                    'shortHelp' => 'updating an order in SugarCRM',
    
                    //long help to be displayed in the help documentation
                    'longHelp' => './custom/modules/Ord_Orders/clients/base/api/help/CreateOrder.html',
                ),
            );
        }

  • 嗨Francesca shiekh,

    感谢您的答复。

    卷曲isn.'曾经调用3d彩吧论坛。 JavaScript用于调用其他服务器中的3d彩吧论坛。以下是用于调用3d彩吧论坛的过程 
    所有糖科内置股票3d彩吧论坛's正常工作。与其他服务器。只有自定义模块's api不起作用。

    一旦从下面的URL生成访问令牌:  
    http:// {{url}} / sugarcrm / rest / v10 / oauth2 /令牌   (令牌是从此URL生成的)


    将在标题中传递作为持票人令牌更新orderapi
    http:// {{url}} / sugarcrm / rest / v10 / dard_orders / updateDermethod.


    <propertyMap>
    <property>
    <name>Request-Line</name>
    <value>PUT / Sugarcrm /休息/ v10 / ord_orders / updateordermethod HTTP/1.1</value>
    </property>
    <property>
    <name>Cookie</name>
    <value>PHPSESSID=6b1c70d0-6571-4969-b613-6697b2a2311a; download_token_custom=d6794d5a-e532-44f8-b655-15efcb2b893e</value>
    </property>
    <property>
    <name>Cookie</name>
    <value>PHPSESSID=lncpj8nrnjqdutfuh205vao8rr; path=/</value>
    </property>
    <property>
    <name>Authorization</name>
    <value>Bearer 6b1c70d0-6571-4969-b613-6697b2a2311a</value>
    </property>
    <property>
    <name>Accept</name>
    <value>*/*</value>
    </property>
    <property>
    <name>Host</name>
    <value>{{Value is been added has IP}}</value>
    </property>
    <property>
    <name>Content-Type</name>
    <value>application/json; charset=ISO-8859-1</value>
    </property>
    </propertyMap>

  • 对不起 ,

    我可以't看到问题是其他v10在更新的版本中被休息v11被休息v11被取代,但我不'看看为什么会破坏它。也许是安德烈é对你有更多的洞察力。

  • 所以,我可能完全是基础,但我看了一些3d彩吧论坛文档,如果我读取它右边的承载令牌支持在v11中添加了支持

    //sugarclub.phone2play.com/dev-club/b/dev-blog/posts/the-sugar-rest-api-adds-support-for-oauth-2-0-bearer-tokens-in-fall-18

    这意味着,假设您在版本上没有多年,如果您只需更改HTTP

    http:// {{url}} / sugarcrm / rest / v10 / dard_orders / updateDermethod.

    to 

    http:// {{url}} / sugarcrm / rest / v11 / dard_orders / updateDermethod.

    它可能有效吗?

    我承认我不'T完全了解3d彩吧论坛认证过程......也是如此,我'll推迟给别人。

    Sugarclub.sugarcrm.com/.../api-authentication-primer.