我无法让服务识别到/comment.json的POST。创建节点也有类似的问题。
以下是我得到的错误:HTTP / 1.1 406不可接受:缺少必需的参数注释
此消息来自文件:/services/server/rest_server/includes/RESTServer.inc具体来说,以下几行:
elseif (!isset($info['optional']) || !$info['optional']) {
return services_error(t('Missing required argument !arg', array(
'!arg' => $info['name'],
)), 406);
}
基本上,似乎认为缺少“ comment”参数(并且它不是可选的)。
这是我提供的JSON的许多位之一(向节点8801发布注释)
{name:"test",language:"und",cid:"0",pid:"0",uid:"17593",nid:"8801",
comment:{subject:"Subject of the comment, if not entered it will be auto-generated",
comment_body:
{und:[
[{value:"value of the field comment in the comment, remember that in D7 we can create fields for comments too", format: "full_html"}]
]}}}
这是完全有效的(基于其他在线JSON检查)。它还与我在/services/test/functional/ServivesResourceCommentTests.test的服务测试示例中看到的内容匹配
但是,我总是收到相同的错误消息。这似乎类似于: Drupal 7服务json节点对象
这也没有解决。有人可以为我提供正确的JSON格式吗?真的,我要做的就是将它传递给类似的东西:
{ nid : 8081 , uid : 17593 ,comment:{comment_body:"test",subject:"test"}}
我的HTTP标头似乎还可以,并且用户/登录工作正常。