• 02-10-2020, 09:49:39
    #1
    herkese iyi forumlar arkadaşlar,
    php ile json formatındadata gönderimi yapıyorum ancak 1 noktada hata alıyorum sanırım json formatında olmadığı için bir hata,

    aşağıdaki kod düzeni ile gönderdiğimde sıkıntı yok attributes kısmını eklediğimde hata veriyor
    sanırım kod düzeninde bir sorun var, bilgisi olan arkadaşların yardımına ihtiyacım var..

    aldığım hata bu : [message] => Could not read JSON document:

    ( trendyol api kullanarak ürün düzenleme işlemi yapmaya çalışıyorum )

    $product['items'][] = array(
    'barcode'=> $barcode,
    //'title'=> (string)$title,
    'title'=> 'Rümeysa Tesettür Tunik - İndigo',
    'productMainId' => (string)$productMainId,
    'brandId' => (int)$brandId,
    'categoryId' => (int)$pimCategoryId,
    'quantity' => (int)$quantity,
    'stockCode' => (string)$stockCode,
    'dimensionalWeight' => 1,
    'description' => $description,
    'currencyType' => 'TRY',
    'listPrice' => $listPrice,
    'salePrice' => $salePrice,
    'vatRate' => 8,
    'cargoCompanyId' => 3
    );
    yukarıdaki kısmı eklediğimde herşey tamam ama alttaki kod ile seçenekleri eklediğimde format uygun değil diyor

    $product['items'][] = array(
    'barcode'=> $barcode,
    'title'=> $title,
    'productMainId' => (string)$productMainId,
    'brandId' => (int)$brandId,
    'categoryId' => (int)$pimCategoryId,
    'quantity' => (int)$quantity,
    'stockCode' => (string)$stockCode,
    'dimensionalWeight' => 1,
    'description' => $description,
    'currencyType' => 'TRY',
    'listPrice' => $listPrice,
    'salePrice' => $salePrice,
    'vatRate' => 8,
    'cargoCompanyId' => 3,
        'attributes' => [
        [
        'attributeId' => 338,
        'attributeValueId' => $size,
        ],
        [
        'attributeId' => 343,
        'attributeValueId' => 4295,
        ],
        [
        'attributeId' => 47,
        'attributeValueId' => $color,
        ],
        ]
    );
  • 02-10-2020, 09:52:30
    #2
    'attributes' => ([
    [
    'attributeId' => 338,
    'attributeValueId' => $size,
    ],
    [
    'attributeId' => 343,
    'attributeValueId' => 4295,
    ],
    [
    'attributeId' => 47,
    'attributeValueId' => $color,
    ],
    ])
  • 02-10-2020, 09:55:51
    #3
    profweb adlı üyeden alıntı: mesajı görüntüle
    'attributes' => ([
    [
    'attributeId' => 338,
    'attributeValueId' => $size,
    ],
    [
    'attributeId' => 343,
    'attributeValueId' => 4295,
    ],
    [
    'attributeId' => 47,
    'attributeValueId' => $color,
    ],
    ])
    malesef aldığım hata yine aynı

    düzeltme: sanırım sorun color değeri ile gönderdiğim text'de sayı olarak gönderdiğimde hata vermiyor ancak text olunca hata veriyor, ama text göndermem gerek.

    [message] => Could not read JSON document: Can not deserialize value of type java.lang.Long from String "İndigo": not a valid Long value
     at [Source: java.io.PushbackInputStream@db08e7eb; line: 1, column: 908] (through reference chain: com.trendyol.supplier.api.gateway.model.request.spm.UpdateProductV2BatchRequest["items"]->java.util.ArrayList[0]->com.trendyol.supplier.api.gateway.model.request.spm.ProductV2UpdateRequest["attributes"]->java.util.ArrayList[2]->com.trendyol.supplier.api.gateway.model.request.spm.AttributeV2Request["attributeValueId"]); nested exception is com.fasterxml.jackson.databind.exc.InvalidFormatException: Can not deserialize value of type java.lang.Long from String "İndigo": not a valid Long value
     at [Source: java.io.PushbackInputStream@db08e7eb; line: 1, column: 908] (through reference chain: com.trendyol.supplier.api.gateway.model.request.spm.UpdateProductV2BatchRequest["items"]->java.util.ArrayList[0]->com.trendyol.supplier.api.gateway.model.request.spm.ProductV2UpdateRequest["attributes"]->java.util.ArrayList[2]->com.trendyol.supplier.api.gateway.model.request.spm.AttributeV2Request["attributeValueId"])
  • 02-10-2020, 09:59:06
    #4
    Karakten uyumluluk sorunu olabilir gibi geldi bana.

    Türkçe karakterleri düzenler misiniz? Olursa, karakter setini utf8 yapacaksınız.
  • 02-10-2020, 10:49:40
    #5
    TimberLock adlı üyeden alıntı: mesajı görüntüle
    Karakten uyumluluk sorunu olabilir gibi geldi bana.

    Türkçe karakterleri düzenler misiniz? Olursa, karakter setini utf8 yapacaksınız.
    malesef türkçe karakter olmayan kelimelerde de aynı yapıyor, saırım sorun textin gönderilme biçimi kod ile alakalı olabilir.
  • 02-10-2020, 10:56:50
    #6
    profweb adlı üyeden alıntı: mesajı görüntüle
    'attributes' => ([
    [
    'attributeId' => 338,
    'attributeValueId' => $size,
    ],
    [
    'attributeId' => 343,
    'attributeValueId' => 4295,
    ],
    [
    'attributeId' => 47,
    'attributeValueId' => $color,
    ],
    ])
    TimberLock adlı üyeden alıntı: mesajı görüntüle
    Karakten uyumluluk sorunu olabilir gibi geldi bana.

    Türkçe karakterleri düzenler misiniz? Olursa, karakter setini utf8 yapacaksınız.
    hallettim arkadaşlar çok teşekkür ediyorum, sorun şu ufacık koddaymış attributeValueId id yerine customAttributeValue koymam gerekiyormuş dikkatimden kaçmış..

    'attributeId' => 47,
    'attributeValueId' => $color,