Knowledge Craving Knowledge Craving - 6 days ago 5
PHP Question

Drupal 7 REST services - Suppress API output of NULL

I've an API service callback function which ties up with its own module template to give an HTML output.

As per my understanding, default content type of API output is

application/json
, so I had to override it manually to
text/html
.

However, I'm still getting a
null
output always no matter whatever I try. Can someone please help me suppress this unwanted
null
output?




custom_module.module



function api_callback_function($a) {
if (!headers_sent()) {
drupal_add_http_header('Content-Type', 'text/html');
}
print theme('custom_template_name_alias', array(
'b' => $a
));
return;
}

function custom_module_theme() {
$themes = array(
'custom_template_name_alias' => array(
'template' => 'something-only', // name of template file, sans file extension
'variables' => array(
'b' => NULL
),
)
);
return $themes;
}





something-only.tpl.php



<?php
$c = $variables['b'];
$path = drupal_get_path('module', 'custom_module');
global $base_url;
?>
<!doctype html><html class="no-js" lang="en">
<head>
<!-- HEAD related HTML code comes here -->
</head>
<body>
<div>Current value of variable 'b' = <?php echo $c; ?></div>
</body>
</html>





Output



Output

Answer

Try to replace return to die() in api_callback_function

Comments