MDVA-43348: 기프트 카드 GraphQL 요청에 오류가 표시됨

MDVA-43348 패치는 다음과 같은 경우 기프트 카드 GraphQL 요청에 오류가 표시되는 문제를 해결합니다. gift_card_options "uid"를 포함합니다. 이 패치는 다음 경우에 사용할 수 있습니다. 품질 패치 도구(QPT) 1.1.12가 설치되어 있습니다. 패치 ID는 MDVA-43348입니다. 이 문제는 Adobe Commerce 2.4.5에서 수정됩니다.

영향을 받는 제품 및 버전

패치는 Adobe Commerce 버전에 대해 만들어집니다.

  • Adobe Commerce(모든 배포 방법) 2.4.2

Adobe Commerce 버전과 호환:

  • Adobe Commerce(모든 배포 방법) 2.4.2 - 2.4.4
NOTE
이 패치는 새로운 품질 패치 도구 릴리스가 있는 다른 버전에 적용할 수 있습니다. 패치가 Adobe Commerce 버전과 호환되는지 확인하려면 magento/quality-patches 최신 버전으로 패키지하고 Quality Patches Tool: 패치 검색 페이지. 패치 ID를 검색 키워드로 사용하여 패치를 찾습니다.

문제

기프트 카드 GraphQL 요청에 gift_card_options에 "uid"가 포함된 경우 오류가 표시됩니다.

재현 단계:

  1. 기프트 카드 제품을 만듭니다.
  2. 색인 재지정을 수행합니다.
  3. URL 키가 "기프트 카드"인 GraphQL을 호출합니다.

query getProductOptionsForProductPage_bypassFastly($urlKey: String!) {
  products(filter: { url_key: { eq: $urlKey } }) {
    items {
      id
      url_key
      ... on GiftCardProduct {
        allow_open_amount
        open_amount_min
        open_amount_max
        giftcard_type
        is_redeemable
        lifetime
        allow_message
        message_max_length
        gift_card_options {
          uid
          title
          required
        }
      }
    }
  }
}

예상 결과:

기프트 카드 데이터는 요청 시 반환됩니다.

실제 결과:

기프트 카드 데이터 요청 시 다음 오류가 발생합니다.


{
  "errors": [
    {
      "debugMessage": "Cannot return null for non-nullable field \"CustomizableFieldOption.uid\".",
      "message": "Internal server error",
      "extensions": {
        "category": "internal"
      },
      "locations": [
        {
          "line": 16,
          "column": 1
        }
      ],
      "path": [
        "products",
        "items",
        0,
        "gift_card_options",
        0,
        "uid"
      ]
    },
    {
      "debugMessage": "Cannot return null for non-nullable field \"CustomizableFieldOption.uid\".",
      "message": "Internal server error",
      "extensions": {
        "category": "internal"
      },
      "locations": [
        {
          "line": 16,
          "column": 1
        }
      ],
      "path": [
        "products",
        "items",
        0,
        "gift_card_options",
        1,
        "uid"
      ]
    },
    {
      "debugMessage": "Cannot return null for non-nullable field \"CustomizableFieldOption.uid\".",
      "message": "Internal server error",
      "extensions": {
        "category": "internal"
      },
      "locations": [
        {
          "line": 16,
          "column": 1
        }
      ],
      "path": [
        "products",
        "items",
        0,
        "gift_card_options",
        2,
        "uid"
      ]
    },
    {
      "debugMessage": "Cannot return null for non-nullable field \"CustomizableFieldOption.uid\".",
      "message": "Internal server error",
      "extensions": {
        "category": "internal"
      },
      "locations": [
        {
          "line": 16,
          "column": 1
        }
      ],
      "path": [
        "products",
        "items",
        0,
        "gift_card_options",
        3,
        "uid"
      ]
    },
    {
      "debugMessage": "Cannot return null for non-nullable field \"CustomizableFieldOption.uid\".",
      "message": "Internal server error",
      "extensions": {
        "category": "internal"
      },
      "locations": [
        {
          "line": 16,
          "column": 1
        }
      ],
      "path": [
        "products",
        "items",
        0,
        "gift_card_options",
        4,
        "uid"
      ]
    }
  ],
  "data": {
    "products": {
      "items": [
        {
          "id": 2,
          "url_key": "gitf-card",
          "allow_open_amount": false,
          "open_amount_min": null,
          "open_amount_max": null,
          "giftcard_type": "VIRTUAL",
          "is_redeemable": true,
          "lifetime": 0,
          "allow_message": true,
          "message_max_length": 255,
          "gift_card_options": [
            null,
            null,
            null,
            null,
            null
          ]
        }
      ]
    }
  }
}

패치 적용

개별 패치를 적용하려면 배포 방법에 따라 다음 링크를 사용합니다.

관련 읽기

품질 패치 도구에 대한 자세한 내용은 다음을 참조하십시오.

QPT에서 사용할 수 있는 다른 패치에 대한 정보는 다음을 참조하십시오. QPT에서 사용 가능한 패치 개발자 설명서에서 확인할 수 있습니다.

recommendation-more-help
8bd06ef0-b3d5-4137-b74e-d7b00485808a