Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Mengapa objek ItemCategory tidak diisi dalam panggilan GetConfiguration Golang walaupun diisytiharkan dalam topeng?

Mengapa objek ItemCategory tidak diisi dalam panggilan GetConfiguration Golang walaupun diisytiharkan dalam topeng?

Susan Sarandon
Susan Sarandonasal
2024-11-22 14:16:48890semak imbas

Why is the ItemCategory object not populated in Golang's GetConfiguration call despite being declared in the mask?

Tidak Dapat Mendapatkan Maklumat Kategori Item daripada Panggilan GetConfiguration di Golang

Masalah:
Apabila memanggil GET https://api.softlayer.com/rest/v3/SoftLayer_Product_Package/257/getConfiguration?objectMask=mask[itemCategory], objek ItemCategory diisi dalam REST, tetapi tidak di Golang, walaupun mengisytiharkannya dalam topeng.

import (
    "github.com/softlayer/softlayer-go/services"
)

// ...

// Object-Mask to get specific Vlan's information
mask := "itemCategory"

// Call to getNetworkVlans in order to retrieve vlans according to filter.
result, err := service.Mask(mask).Id(257).GetConfiguration()
if err != nil {
    fmt.Printf("\n Unable to retrieve config:\n - %s\n", err)
    return
}

Sampel output:

{
    "id": 7167,
    "isRequired": 0,
    "itemCategoryId": 390,
    "orderStepId": 1,
    "packageId": 257,
    "sort": 0
}

Penyelesaian:

Isu timbul kerana titik akhir lalai untuk SoftLayer API dalam Go ialah XMLRPC, yang tidak menyokong mendapatkan semula objek ItemCategory. Untuk membetulkannya, tukar kepada titik akhir REST dengan mengemas kini konfigurasi sesi:

endpoint := "https://api.softlayer.com/rest/v3"

// Create a session
sess := session.New(username, apikey, endpoint)

Ini sepatutnya mengisi objek ItemCategory dalam respons API seperti yang dijangkakan.

Atas ialah kandungan terperinci Mengapa objek ItemCategory tidak diisi dalam panggilan GetConfiguration Golang walaupun diisytiharkan dalam topeng?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn