Rest 德鲁帕7休息:我不能执行POST和PUT方法。错误为:不可接受:需要节点类型,代码:406?

Rest 德鲁帕7休息:我不能执行POST和PUT方法。错误为:不可接受:需要节点类型,代码:406?,rest,http,drupal,drupal-7,httprequest,Rest,Http,Drupal,Drupal 7,Httprequest,我用的是drupal7。我的用于get和delete的drupal_http_request()对于经过身份验证的用户来说工作正常,但是post和put方法不起作用 错误为:不可接受:需要节点类型,http错误代码为:406。我的代码如下: function ws_form_post_auth() { $base_url = 'http://localhost/drupalws/api/v1'; $data = array( 'username' => 'student1', '

我用的是drupal7。我的用于get和delete的drupal_http_request()对于经过身份验证的用户来说工作正常,但是post和put方法不起作用

错误为
:不可接受:需要节点类型
,http错误代码为
:406
。我的代码如下:

function ws_form_post_auth() {

$base_url = 'http://localhost/drupalws/api/v1';
$data = array(
  'username' => 'student1',
  'password' => 'welcome',
);
$data = http_build_query($data, '', '&');
$options = array(
  'headers' => array(
    'Accept' => 'application/json',
  ),
  'method' => 'POST',
  'data' => $data
);

$response = drupal_http_request($base_url . '/user/login', $options);
$data = json_decode($response->data);

// Check if login was successful
if ($response->code == 200) {

    $options['headers']['Cookie'] = $data->session_name . '=' . $data->sessid;
    $options['headers']['X-CSRF-Token'] = $data->token;

    $data = array(
        'title' => 'First forum post',
        'type'=> 'forum',
        'body'=> array(
            'und'=>array(
                0=> array(
                    'value'=>'This is my first forum post via httprequest.'
                )
            )
        )
    );
  $data = json_encode($data);

  $options['data'] = $data;
  $options['method'] = 'POST';

  $response = drupal_http_request($base_url . '/node', $options);

  return $response->status_message;
}
return $response->status_message;
}

我得到了我的问题的解决方案,我只是在标题中遗漏了一个内容类型

[……] 如果($response->code==200){

[……]

$options['headers']['Cookie'] = $data->session_name . '=' . $data->sessid;
$options['headers']['X-CSRF-Token'] = $data->token;
$options['headers']['Content-Type'] = 'application/json';