[英]Graphql input mandatory property
是否有可能創建一個帶有強制輸入或其他輸入的 GraphQL 輸入。
例如:
input ClientInput
{
name: String!
token: String!
email: String!
}
我希望屬性token
或email
是強制性的。 如果提供其中之一,則另一個成為可選。
可能嗎? 如果沒有,是否有一種“解決方法”?
不,這是不可能的。 一種解決方法是將這兩個字段設置為 aptional,然后進行手動驗證,在此您可以返回自定義錯誤。 另一種方法是將字段組合成類似
input ClientInput
{
name: String!
tokenOrEmail: String!
}
通過這樣做,您可以將該字段設為必填,然后進行一些解析以確定提供的值是令牌還是 email 更好的方法是添加另一個字段來提供 authMethod,如下所示:
input ClientInput
{
name: String!
authData: String!
authMethod: AuthMethod!
}
enum AuthMethod {
EMAIL
TOKEN
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.