簡體   English   中英

Mongo過濾器轉換為GraphQL查詢| 必須是一個對象,得到_String_

[英]Mongo filter into GraphQL query | must be an object, got _String_

有一種方法可以通過GraphQL將過濾器選項傳遞給Mongo? 因為我嘗試過這種方式,但是出現了錯誤"message": "Parameter \\"filter\\" to find() must be an object, got {email: \\"test@test.com\\"}",

這是我的查詢類型

users: {
      type: new GraphQLList(UserType),
      args: {
        filter: { type: GraphQLString }
      },
      resolve(_, { filter }, { req, res }) {
        // I tried several ways to get query string and give it to mongo into a object
        JSONFilter = JSON.parse(JSON.stringify(filter));
        return UserSchema.find(JSONFilter);
      }
    }

我的查詢看起來像這樣

query myReferrals {
  users(filter: "{email: \"test@test.com\"}"){ //I though this should be enough, but no!
    referrals{
      user{
        email
      }
    }
  }
}

這是一個“錯別字”,對我的查詢應該是這樣的:

query myReferrals {
  users(filter: "{\"email\": \"test@test.com\"}"){ // Just Add `\"key\"` to key
    referrals{
      user{
        email
      }
    }
  }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM