我正在尝试使用 Bearer Token 为外部 API 调用运行以下脚本:
export interface DATOS {
count: number;
results: Result[];
skill_memberships: SkillMemberships;
meta: Meta;
}
export interface Meta {
count: number;
page_count: number;
page_number: number;
page_size: number;
}
export interface Result {
key: string;
id: string;
}
export interface SkillMemberships {
"87530265": The87530265;
}
export interface The87530265 {
level: number;
max_level: number;
created_at: string;
updated_at: string;
cached_skill_name: string;
skill_id: string;
creator_id: string;
user_id: string;
id: string;
}
export interface TESTBASIC {
userId: number;
id: number;
title: string;
body: string;
}
async function main(workbook: ExcelScript.Workbook): Promise<void>
{
var myHeaders = new Headers();
myHeaders.append("Authorization", "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx");
console.log("Test2");
let url = encodeURI('https://api.xxxxxxxxxxxx.com/');
try
{
let fetchResult = await fetch(url, {
method: 'GET',
headers: {
"Access-Token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"Content-Type": "application/json",
"Accept": "application/json"
},
redirect: 'follow'
});
let json: DATOS = await fetchResult.json();
console.log(json);
} catch(e)
{
console.log(e);
}
}
但每次我尝试运行它以在控制台中显示结果时,我总是会收到以下错误:
{message: "Failed to fetch", name: "TypeError", stack: "TypeError: Failed to fetch at
self.fetch (https://c0a4c0b1-8f01-4eaa-84f0-6434f1eb8473.officescripts.microsoftusercontent.com/eed0a086-3498-4f91-a377-1e0265ecc0cc/worker.js:99:13)
at main (blob:https://c0a4c0b1-8f01-4eaa-84f0-6434f1eb8473.officescripts.microsoftusercontent.com/5db7939c-4ae9-4802-8c9f-aed101943d56:183:45)
at async _____wrapperMain (blob:https://c0a4c0b1-8f01-4eaa-84f0-6434f1eb8473.officescripts.microsoftusercontent.com/5db7939c-4ae9-4802-8c9f-aed101943d56:209:20)"}
我对这个脚本有一个疑问是Excel Office Script是否可以直接使用这种类型的令牌,因为如果它不能使用这种类型的令牌,可能会一直出现这种类型的错误,这是真的吗? ?或者这可能是由于文本结构或界面中的错误?有没有办法通过 Office 脚本做到这一点,或者只能通过 VBA 做到这一点?
问候