Я пытаюсь сделать POST-запрос к моему серверу graphql, работающему на localhost: 4000.Чтобы получить своих пользователей, я использовал
getUsers(){
var query = `{users(id:""){username}}`
fetch('http://localhost:4000/graphql', {
method:'POST',
headers: {
'Content-Type' :'application/json',
'Accept': 'application/json',
},
body: JSON.stringify({
query,
})
})
.then(res => res.json())
.then(res => console.log('data returned', res))
, это не сработало, поэтому я сделал запрос керли, чтобы увидеть, что не так,
curl -X POST http://localhost:4000/graphql -H "Content-Type: application/json "-d "{"query": "{users(id:""){username}}"
После того, как я запустил это, я продолжал получать,
Unexpected token q in JSON at position
После поиска этой проблемы в Google сначала я нашел учебник, который, как мне показалось, мог бы помочь.После обучения я изменил свой код на
getUsers(){
var query = `{users(id:""){username}}`
fetch('http://localhost:4000/graphql', {
method:'POST',
headers: {
'Content-Type' :'application/json',
'Accept': 'application/json',
},
body: JSON.stringify({
query,
})
})
//.then(r => r.json())
.then(res => res.text())
.then(text => console.log('data returned', text))
, который все еще ничего не записывал.Итак, я запустил последний завиток, чтобы попытаться решить эту проблему
curl -X POST http://localhost:4000/graph0ql -d "{"query": "{users(id:""){username}}"
, который продолжал возвращаться
{"errors":[{"message":"Must provide query string."}]}
Теперь я застрял и не знаю, что попробовать дальше.Я проверил строку запроса, и она дает мне ожидаемый ответ в graphiql, а также правильный URL-адрес.Мой сервер углового интерфейса (с которого я делаю этот запрос) работает на localhost: 4200