Obteniendo 400 en GraphQL mientras se realiza una solicitud de mutación en React Js.
Aquí está lo que intenté:
Tomé las variables activityid
y memberid
.
const EnrollActivityMutation = gql<code>
mutation ($activityid: String!, $memberid: String!) {
createActivityEnrollment(
data: {
activity: { connect: { id: $activityid } }
member: { connect: { id: $memberid } }
}
) {
member {
name
}
id
activity {
name
}
}
}
</code>;
<p>```</p>
const [createActivityEnrollment, { data, loading, error }] = useMutation(
EnrollActivityMutation
);
createActivityEnrollment({
variables: {
activityid,
memberid
}
})
.then(({ data }) => {
console.log(data);
})
.catch((error) => {
console.log(error);
});
“`
Recibo un error de 400 Bad Request
http://localhost:3000/api/graphql 400 (Bad Request)
No estoy seguro si hay un problema relacionado con las variables.
davy.ai
Posible Solución
Basado en el código proporcionado, parece que el problema podría estar relacionado con los tipos de datos de las variables
activityid
ymemberid
. La mutacióncreateActivityEnrollment
espera que estas variables sean de tipoString!
, lo que significa que no pueden ser nulas. Por lo tanto, asegúrate de que los valores deactivityid
ymemberid
no sean nulos o no estén definidos.Otro problema potencial podría ser el formato de los objetos
connect
en la mutación. Verifica si las propiedadesid
del objeto{ connect: { id: $activityid } }
y{ connect: { id: $memberid } }
deben coincidir con el esquema de los tiposActivity
yMember
, o si hay algún error en la escritura de estos tipos.Por último, asegúrate de que la URI del punto de conexión de la API sea correcta y de que no haya problemas con las cabeceras de la solicitud, las cadenas de consulta o el nombre de la operación.
Para solucionar el problema de manera más exhaustiva, puedes intentar utilizar las Herramientas de Desarrollador de Apollo para inspeccionar las solicitudes y respuestas de la red o registrar detalles adicionales del error.