[英]Script to fetch events/ID/name from an API, then list them, G-sheet
[英]Script to fetch users and ID from an API, then list them, one by one in G-sheet A10:B
Guilded 剛剛(預)發布了一個 API,我希望使用它從我的服務器中檢索用戶列表和用戶 ID,並將其放在 Google 表格中。 似乎我得到了信息(我在我的日志中看到),但我正在努力使用 output。 我所做的只是獲得第一個用戶和 ID。
這是我的腳本,嘗試逐行獲取所有用戶|用戶 ID。
我在這里有一個測試文件: https://docs.google.com/spreadsheets/d/1ZUZ6utQO6cW_BAy6cMACxX2H1_zrZAIE0CTtTmdN9nc/edit?usp=sharing
感謝您提供的任何幫助,
尼爾,
[編輯]我相信我for (var i = 0; i < data.length; i++)
不正確,因為如果我的 logger.log 在其中,它不會返回任何內容。 這可能是由於有效負載,但我不知道如何修復它。
這是一個可以工作的腳本。
data
是 object。 在data
中是一個members
數組,因此您索引錯誤的變量。
此外,我會將所有成員數據收集到一個數組中並使用單個setValues()
function Get_Members() {
var ss = SpreadsheetApp.getActiveSpreadsheet ();
var url = "https://www.guilded.gg/api/v1/servers/Gjk9vPgl/members";
var key = ss.getRange('test!B1').getValue();
var rowCounter = 10;
var startColumn = 1;
var params = {
method: "GET",
headers: { Authorization: key },
contentType: "application/json",
};
var dataJSON = UrlFetchApp.fetch(url, params);
var data = JSON.parse(dataJSON)
console.log(data);
let members = [];
for (var i = 0; i < data.members.length; i++){
members.push([data.members[i].user.name,data.members[i].user.id]);
}
ss.getActiveSheet().getRange(10,1,members.length,2).setValues(members);
}
執行日志
8:40:06 AM Notice Execution started
8:40:06 AM Info { members:
[ { user: [Object], roleIds: [Object] },
{ user: [Object], roleIds: [Object] },
{ user: [Object], roleIds: [Object] },
{ user: [Object], roleIds: [Object] },
{ user: [Object], roleIds: [Object] } ] }
8:40:06 AM Notice Execution completed
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.