Не могу понять, как передать Steam Web API в Int64 - PullRequest
0 голосов
/ 07 мая 2019

Steam Web API имеет функцию для получения информации об опубликованном файле Мастерской, которая называется GetPublishedFileDetails . В нем говорится, что я могу сделать запрос на несколько файлов, но я не могу понять, как это сделать с помощью Javascript. На данный момент я должен сделать несколько вызовов API, что кажется ненужным.

Я пытался отправить ему массив, строки, все, что я могу придумать.

        for (let index = 0; index < arrayOfAddonIds.length; index++) {
            $.ajax({
                type: 'POST',
                url: 'https://api.steampowered.com/ISteamRemoteStorage/GetPublishedFileDetails/v1/',
                data: {
                    'itemcount': 1,
                    'publishedfileids[0]': parseInt(arrayOfAddonIds[index]),
                },
                dataType: 'json',
            }).done((data) => {
                console.log()
                populateAddonList(addon_data);
            }).fail((err) => {
                console.log(err);
            }).always((data) => {
                var addon = data.response.publishedfiledetails["0"];
                if (addon.result == 1) {
                    for (let i = 0; i < Object.keys(data).length; i++) {
                        var addonObject = {
                            "title": addon.title,
                            "id": addon.publishedfileid
                        }
                        addon_data.push(addonObject);
                    }
                }
            });
        }

Есть ли способ, которым я мог бы достичь этого за один вызов API?

Это также приложение Electron, возможно, оно открывает некоторые возможности.

1 Ответ

1 голос
/ 07 мая 2019

Полагаю, вам нужно сделать массив следующим образом:

data: {
    'itemcount': 3, // Increase itemcount
    'publishedfileids[0]': ID0,
    'publishedfileids[1]': ID1,
    'publishedfileids[2]': ID2, // Add items accordingly
},
...