我正在构建一个Shopify应用,该应用需要调整Shopify中的产品库存。 Shopify将使用admin/product.json
弃用其库存调整POST调用,并将更新为/admin/inventory_levels/adjust.json
,但是新的库存调整POST调用一次只能更新单个库存级别。
但是我的应用程序需要在某个特定的时间点更新多个库存级别,因此对每个单个库存级别执行POST调用会占用大量资源并且很耗时。当我联系Shopify专家时,他建议我将GraphQL用于上述目的。我在Java中研究了GraphQL + Shoipfy的实现,但没有找到令人满意的结果,因此我需要在Java中实现GraphQL的Client POST调用方面的帮助。
下面是我的GraphQL结构,我想用Java实现
mutation {
item1: inventoryAdjustQuantity(input: {inventoryLevelId: "gid://shopify/InventoryLevel/9229566067?inventory_item_id=10588945219699", availableDelta: 3}) {
inventoryLevel {
available
}
userErrors {
field
message
}
}
item2: inventoryAdjustQuantity(input: {inventoryLevelId: "gid://shopify/InventoryLevel/9229762675?inventory_item_id=10588945219699", availableDelta: 3}) {
inventoryLevel {
available
}
userErrors {
field
message
}
}
item3: inventoryAdjustQuantity(input: {inventoryLevelId: "gid://shopify/InventoryLevel/9229926515?inventory_item_id=10588945219699", availableDelta: 3}) {
inventoryLevel {
available
}
userErrors {
field
message
}
}
item4: inventoryAdjustQuantity(input: {inventoryLevelId: "gid://shopify/InventoryLevel/9645391987?inventory_item_id=10588945219699", availableDelta: 3}) {
inventoryLevel {
available
}
userErrors {
field
message
}
}
item5: inventoryAdjustQuantity(input: {inventoryLevelId: "gid://shopify/InventoryLevel/9645457523?inventory_item_id=10588945219699", availableDelta: 3}) {
inventoryLevel {
available
}
userErrors {
field
message
}
}
item6: inventoryAdjustQuantity(input: {inventoryLevelId: "gid://shopify/InventoryLevel/9645490291?inventory_item_id=10588945219699", availableDelta: 3}) {
inventoryLevel {
available
}
userErrors {
field
message
}
}
item7: inventoryAdjustQuantity(input: {inventoryLevelId: "gid://shopify/InventoryLevel/9229566067?inventory_item_id=10588945252467", availableDelta: 3}) {
inventoryLevel {
available
}
userErrors {
field
message
}
}
item8: inventoryAdjustQuantity(input: {inventoryLevelId: "gid://shopify/InventoryLevel/9229762675?inventory_item_id=10588945252467", availableDelta: 3}) {
inventoryLevel {
available
}
userErrors {
field
message
}
}
item9: inventoryAdjustQuantity(input: {inventoryLevelId: "gid://shopify/InventoryLevel/9229926515?inventory_item_id=10588945252467", availableDelta: 3}) {
inventoryLevel {
available
}
userErrors {
field
message
}
}
item10: inventoryAdjustQuantity(input: {inventoryLevelId: "gid://shopify/InventoryLevel/9645391987?inventory_item_id=10588945252467", availableDelta: 3}) {
inventoryLevel {
available
}
userErrors {
field
message
}
}
}
如果您能帮助我解决此问题,或引导我找到一些有用的链接,那就太好了。
答案 0 :(得分:0)
您可以使用graphql管理员应用程序在应用程序中运行查询。这是一个非常好的应用程序,它还可以帮助您找到参数以及识别查询错误。 https://shopify-graphiql-app.shopifycloud.com/login
您还可以访问文档来描述我们如何使用失眠-> graphql学习套件。在需要导入集合的地方。我正在使用此工具运行graphql。 https://www.shopify.com/partners/blog/shopify-graphql-learning-kit