2
我想POST一個更新JSONString字段「name」的變量。當我這樣做時,我得到了一個響應 - 400 BAD REQUEST,但是當我嘗試其他變體(字段類型爲String)時,它會變得平滑,結果正是我想要的。GraphQL上的POST返回400不良請求
function updateUserData() {
var xhr = new XMLHttpRequest(),
token = "BTNsngsfgfstnrw64wNsrgnws"
var mutation = `mutation {
addPosition(input: {
name: "{\"pl\": \"Devlo\"}"
}) {
result {
name
}
}
}`;
$.ajax({
beforeSend: (xhr) => xhr.setRequestHeader('Authorization', 'Basic ' + token),
type: 'POST',
url: 'http://46.17.113.45/graphql',
data: JSON.stringify({ 'query': 'mutation { addPosition(input: { name: "{\\"p\\": \\"Develo\\"}" }) { result { name
contentType: 'application/json'
}).done(function(response) {
console.log(response)
});}
在GraphiQL中,突變效果很好。返回值就是查詢中的內容。 JSONString和這些引號是否存在問題,或者問題在其他位置? token,type,contentType是很好的 - 其他帶有查詢的POST或者突變很好。我已經花了幾個小時試圖做這項工作,但沒有效果。
解決方案 我明白了。報價前應該有雙斜槓而不是一個。