2

我正在尝试测试运行最新版本 CE (6.0.1) 的 SugarCRM REST API。似乎每当我进行查询时,API 都会返回“null”,仅此而已。如果我省略了参数,那么 API 会返回 API 描述(文档说应该这样)。

我正在尝试执行登录,将方法(登录)、input_type 和 response_type(json)以及 rest_data(JSON 编码参数)作为参数传递。以下代码执行查询:

 $api_target = "http://example.com/sugarcrm/service/v2/rest.php";

 $parameters = json_encode(array(
    "user_auth" => array(
        "user_name" => "admin",
        "password" => md5("adminpassword"),
    ),
    "application_name" => "Test",
    "name_value_list" => array(),
 ));
 $postData = http_build_query(array(
    "method" => "login",
    "input_type" => "json",
    "response_type" => "json",
    "rest_data" => $parameters
 ));
 echo $parameters . "\n";
 echo $postData . "\n";

 echo file_get_contents($api_target, false,
    stream_context_create(array(
        "http" => array(
            "method" => "POST",
            "header" => "Content-Type: application/x-www-form-urlencoded\r\n",
            "content" => $postData
        )
    ))) . "\n";

我尝试了不同的参数变体并使用用户名而不是 user_name,并且都提供了相同的结果,只是响应“null”就是这样。

4

1 回答 1

0

尝试设置input_typeresponse_typeJSON(大写)。如果它不起作用,请转到 Sugar 安装,编辑=>config.php下的条目并创建它,而不是查看它是否显示任何错误。loggerleveldebugfatal

于 2010-12-21T07:19:08.420 回答