Last active
October 3, 2024 22:20
-
-
Save yusinto/30bba51b6f903c1b67e0383f4a288269 to your computer and use it in GitHub Desktop.
Graphql mutation with fetch
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const updateCountryFetch = async (countryId, happinessFactor, population) => { | |
const query = JSON.stringify({ | |
query: `mutation { | |
updateCountry( | |
id: "${countryId}" | |
happinessFactor: ${happinessFactor} | |
population: ${population}) { id } | |
} | |
` | |
}); | |
const response = await fetch(graphCoolEndpoint, { | |
headers: {'content-type': 'application/json'}, | |
method: 'POST', | |
body: query, | |
}); | |
const responseJson = await response.json(); | |
return responseJson.data; | |
}; |
message: "Must provide query string."}
is what I keep getting and I'm pretty fed up with graphQL at this point.
Here is working for me
async function generateConversationWith(userId: string) {
const response = await fetch(`${process.env.API_URL}/graphql`, {
method: "POST",
credentials: "include",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
query: `
mutation GenerateChatConversationWith {
generateChatConversationWith(chatWithUserId: "${userId}") {
id
}
}`,
}),
});
const responseData = await response.json();
console.log("response", responseData);
}
Thanks @phattranky 🤝
thanks @phattranky
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
@mailyokesh The above example is using Template literals. To pass a variable from an argument, you just use String Interpolation. Eg. see
id: "${countryId}"
.https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals