Services (Legacy)

T-Soft’ta sıkça kullanılan servisler

Tsoft altyapısında kullanılan servislerden en fazla kullanılanlar bu bölümde aktarılacaktır. Herhangi bir yöntemle belirtilen endpointlere istek atılabilir. Fakat altyapımıza dahil edilen axios kullanılması tavsiye edilmektedir.

“getEndpoint” fonksiyonu kullanımı

CDN kullanan sitelerimizde verilerin cdn üzerinden çekilmesi için “getEndpoint” fonksiyonu kullanılabilir. Böylece eğer cdn kullanılmışsa bu fonksiyon kullanılarak cdn bulunan endpoint bize geri döner. Aşağıdaki örnekte filtre servisinin cdn olduğunda ve olmadığında çıkan sonuçları görünmektedir.

getEndpoint("FILTER_LIST") 
'//cdn.marasmarket.com/srv/service/filter/get/' // cdn varsa 
'/srv/service/filter/get/' // cdn yoksa 

getEndpoint("FILTER_LIST", ["test", "try"]) 
'//cdn.marasmarket.com/srv/service/filter/get/test/try' // cdn varsa 
'/srv/service/filter/get/test/try' // cdn yoksa 

getEndpoint("FILTER_LIST",  "filters-variants-brands-categories-price-models-suppliers" )  
'//cdn.marasmarket.com/srv/service/filter/get/filters-variants-brands-categories-price-models-suppliers' // cdn varsa 
'/srv/service/filter/get/filters-variants-brands-categories-price-models-suppliers' // cdn yoksa 

“axios” ile get isteği

Filtre servisine axios ile istek atma örneği

axios.get(`/srv/service/filter/get/filters-variants-brands-categories-price-models-suppliers?link=kisisel-bakim`)
    .then(res => console.log(res.data))
    .catch(err => console.log(err));

“fetch” ile get isteği

Filtre servisine fetch ile istek atma örneği

fetch("/srv/service/filter/get/filters-variants-brands-categories-price-models-suppliers?link=kisisel-bakim")
    .then(res=> res.json())
    .then(data=> console.log(data))
    .catch(err => console.log(err))

“axios” ile post isteği

Servis linkine axios ile istek atma örneği

let data = {
    title: "title",
    id:1
}
axios.post("url", data)
    .then(res => console.log(res.data))
    .catch(error => console.log(error));

“fetch” ile post isteği

Servis linkine fetch ile istek atma örneği

let data = {
    title: "title",
    id:1
}
const options={
    method: "POST",
    body: JSON.stringify(data),
    headers: {"Content-type": "application/json; charset=UTF-8"}
}
fetch('url', options)
    .then(response => response.json()) 
    .then(json => console.log(json))
    .catch(err => console.log(err));

Servis detayları

Kullanılan parametrelerin anlamları

Filtre servisi örnek çıktı

{
  "FILTERS": [
    {
      "ID": "5",
      "NAME": "Form Filtre",
      "TYPE": "0",
      "LIST_NO": "1",
      "VALUES": [
        {
          "COUNT": 0,
          "ID": "16",
          "DATA": "/Data/EditorFiles/v4images/other/f-square.png",
          "NAME": "Dikdörgen",
          "SELECTED": 0
        },
        {
          "COUNT": 0,
          "ID": "17",
          "DATA": "/Data/EditorFiles/v4images/other/f-kare.png",
          "NAME": "Kare",
          "SELECTED": 0
        },
        {
          "COUNT": 0,
          "ID": "18",
          "DATA": "/Data/EditorFiles/v4images/other/f-circle.png",
          "NAME": "Yuvarlak",
          "SELECTED": 0
        },
        {
          "COUNT": 0,
          "ID": "19",
          "DATA": "/Data/EditorFiles/v4images/other/f-asimetric.png",
          "NAME": "Asimetrik",
          "SELECTED": 0
        }
      ]
    },
    {
      "ID": "4",
      "NAME": "Renk Filtre",
      "TYPE": "0",
      "LIST_NO": "2",
      "VALUES": [
        {
          "COUNT": 0,
          "ID": "20",
          "DATA": "#dddddd",
          "NAME": "Gri",
          "SELECTED": 0
        },
        {
          "COUNT": 0,
          "ID": "21",
          "DATA": "#0000ff",
          "NAME": "Mavi",
          "SELECTED": 0
        },
        {
          "COUNT": 0,
          "ID": "22",
          "DATA": "#b9936c",
          "NAME": "Kahverengi",
          "SELECTED": 0
        },
        {
          "COUNT": 0,
          "ID": "23",
          "DATA": "#feb236",
          "NAME": "Sarı",
          "SELECTED": 0
        },
        {
          "COUNT": 0,
          "ID": "24",
          "DATA": "#e6e2d3",
          "NAME": "Bej",
          "SELECTED": 0
        },
        {
          "COUNT": 0,
          "ID": "25",
          "DATA": "#00ff00",
          "NAME": "Yeşil",
          "SELECTED": 0
        },
        {
          "COUNT": 0,
          "ID": "26",
          "DATA": "#000000",
          "NAME": "Siyah",
          "SELECTED": 0
        },
        {
          "COUNT": 0,
          "ID": "27",
          "DATA": "#ff0000",
          "NAME": "Kırmızı",
          "SELECTED": 0
        }
      ]
    },
    {
      "ID": "1",
      "NAME": "Filtre Çoklu",
      "TYPE": "0",
      "LIST_NO": "3",
      "VALUES": [
        {
          "COUNT": 0,
          "ID": "3",
          "DATA": "",
          "NAME": "Filtre1",
          "SELECTED": 0
        },
        {
          "COUNT": 0,
          "ID": "4",
          "DATA": "",
          "NAME": "Filtre2",
          "SELECTED": 0
        },
        {
          "COUNT": 0,
          "ID": "5",
          "DATA": "",
          "NAME": "Filtre3",
          "SELECTED": 0
        },
        {
          "COUNT": 0,
          "ID": "6",
          "DATA": "",
          "NAME": "Filtre4",
          "SELECTED": 0
        },
        {
          "COUNT": 0,
          "ID": "7",
          "DATA": "",
          "NAME": "Filtre5",
          "SELECTED": 0
        },
        {
          "COUNT": 0,
          "ID": "8",
          "DATA": "",
          "NAME": "Filtre6",
          "SELECTED": 0
        },
        {
          "COUNT": 0,
          "ID": "9",
          "DATA": "",
          "NAME": "Filtre7",
          "SELECTED": 0
        },
        {
          "COUNT": 0,
          "ID": "10",
          "DATA": "",
          "NAME": "Filtre8",
          "SELECTED": 0
        },
        {
          "COUNT": 0,
          "ID": "11",
          "DATA": "",
          "NAME": "Filtre9",
          "SELECTED": 0
        },
        {
          "COUNT": 0,
          "ID": "29",
          "DATA": "",
          "NAME": "Filtre91",
          "SELECTED": 0
        },
        {
          "COUNT": 0,
          "ID": "30",
          "DATA": "",
          "NAME": "Filtre92",
          "SELECTED": 0
        },
        {
          "COUNT": 0,
          "ID": "31",
          "DATA": "",
          "NAME": "Filtre93",
          "SELECTED": 0
        }
      ]
    }
  ],
  "VARIANTS": {
    "TYPE1_LIST": [],
    "TYPE2_LIST": [
      {
        "ID": "34",
        "LIST_NO": "0",
        "NAME": "S",
        "COLOR_CODE": "",
        "IMAGE": "",
        "COUNT": "6",
        "SELECTED": 0
      },
      {
        "ID": "33",
        "LIST_NO": "0",
        "NAME": "XS",
        "COLOR_CODE": "",
        "IMAGE": "",
        "COUNT": "6",
        "SELECTED": 0
      },
      {
        "ID": "30",
        "LIST_NO": "0",
        "NAME": "M",
        "COLOR_CODE": "",
        "IMAGE": "",
        "COUNT": "6",
        "SELECTED": 0
      },
      {
        "ID": "32",
        "LIST_NO": "0",
        "NAME": "XL",
        "COLOR_CODE": "",
        "IMAGE": "",
        "COUNT": "6",
        "SELECTED": 0
      },
      {
        "ID": "31",
        "LIST_NO": "0",
        "NAME": "L",
        "COLOR_CODE": "",
        "IMAGE": "",
        "COUNT": "6",
        "SELECTED": 0
      },
      {
        "ID": "43",
        "LIST_NO": "0",
        "NAME": "XXL",
        "COLOR_CODE": "",
        "IMAGE": "",
        "COUNT": "6",
        "SELECTED": 0
      }
    ]
  },
  "BRANDS": [
    {
      "COUNT": "1",
      "ID": "3",
      "NAME": "Marka3",
      "URL": "sutas",
      "SELECTED": 0
    },
    {
      "COUNT": "4",
      "ID": "2",
      "NAME": "Marka4",
      "URL": "maras-peynir-a",
      "SELECTED": 0
    }
  ],
  "CATEGORIES": [
    {
      "ID": "35",
      "NAME": "Kişisel Bakım",
      "URL": "kisisel-bakim",
      "COUNT": 0,
      "SELECTED": 1,
      "CHILDREN": [
        {
          "ID": "41",
          "NAME": "Deneme 2",
          "URL": "kalifrafi-kalem",
          "COUNT": 0,
          "SELECTED": 0
        },
        {
          "ID": "42",
          "NAME": "The Edition",
          "URL": "roller-kalem",
          "COUNT": 0,
          "SELECTED": 0
        },
        {
          "ID": "43",
          "NAME": "Deneme2",
          "URL": "eksiz-kalem",
          "COUNT": 0,
          "SELECTED": 0
        },
        {
          "ID": "44",
          "NAME": "Güneş Ürünleri",
          "URL": "limitli-kalemler",
          "COUNT": 0,
          "SELECTED": 0
        },
        {
          "ID": "46",
          "NAME": "The Touch",
          "URL": "divit-kalem",
          "COUNT": 0,
          "SELECTED": 0
        }
      ],
      "ROW_NUMBER": "2"
    }
  ],
  "PRICE": {
    "MIN": 0,
    "MAX": 0,
    "MIN_SELECTED": 0,
    "MAX_SELECTED": 0
  },
  "MODELS": [],
  "MODELS_TOTAL": "0",
  "SUPPLIERS": [],
  "TARGET_CURRENCY": "TL",
  "SETTINGS": {
    "LANGUAGE": "tr",
    "SHOW_COUNT": false
  }
}

Table of contents