我正在使用针对Android的graphql apollo客户端。我能够使用单个字段的突变传递数据而没有任何问题。使用输入对象进行突变时,发生错误无法读取未定义电子邮件的属性。但是,相同的graphql在浏览器中运行时也可以正常工作。
Graphql突变
mutation signup($SignupInput:SignupInput) {
signup(data: $SignupInput) {
result{token,firstName,lastName,profileImage}
}
}
输入
{"SignupInput": {"firstName": "John","lastName": "Peter","email": "john@gmail.com"
,"password": "123123"}}
API调用的Java代码
final SignupInput signupInput=SignupInput.builder()
.firstName(edtSignUpName.getText().toString())
.lastName(edtSignUpLastName.getText().toString())
.email(actvSignUpEmail.getText().toString())
.password(edtSignUpPassword.getText().toString())
.profileImage("dasfasdfasdf.png").build();
final SignupMutation signupMutation = SignupMutation.builder()
.signupInput(signupInput)
.build();
signupCall = appController.apolloClient()
.mutate(signupMutation);
signupCall.enqueue(dataCallback);
答案 0 :(得分:1)
mutation signup($SignupInput:SignupInput)
{
signup(data: $SignupInput) {
result{token,firstName,lastName,profileImage}
}
}
我将 $ SignupInput更改为$ signupInput ,在android或java中,用户应使用 CamelCase 。这是突变中的问题