Estou tendo problemas para obter serviços para reconhecer um POST para /comment.json. Eu tenho um problema semelhante ao criar nós também.
A seguir está o erro que eu recebo: HTTP / 1.1 406 Não aceitável: Faltando comentário de argumento obrigatório
Esta mensagem vem do arquivo: /services/server/rest_server/includes/RESTServer.inc Especificamente, as linhas:
elseif (!isset($info['optional']) || !$info['optional']) {
return services_error(t('Missing required argument !arg', array(
'!arg' => $info['name'],
)), 406);
}
basicamente, parece pensar que o argumento "comment" está ausente (e não é opcional).
Este é um dos muitos bits de JSON que eu forneci (postando um comentário no nó 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"}]
]}}}
É perfeitamente válido (com base em outras verificações JSON online). Ele também corresponde ao que vejo nos exemplos de teste de serviços em /services/test/functional/ServivesResourceCommentTests.test
no entanto, sempre recebo a mesma mensagem de erro. Isso parece semelhante a: Drupal 7 services json node object
que também não foi resolvido. Alguém pode me ajudar com a formatação JSON adequada? Realmente, tudo o que eu quero fazer é passar algo como:
{ nid : 8081 , uid : 17593 ,comment:{comment_body:"test",subject:"test"}}
meus cabeçalhos http parecem ok e o usuário / login funcionou bem.