1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import { fetch } from "https://esm.town/v/std/fetch";
export let getWttr = async ({ location }) => {
function convertBlobToDataUrl(blob) {
return new Promise((resolve, reject) => {
const reader = new FileReader();
reader.onload = () => {
const dataUrl = reader.result;
resolve(dataUrl);
};
reader.onerror = () => {
reject(reader.error);
};
reader.readAsDataURL(blob);
});
}
let response = await fetch(`https://wttr.in/${location}.png?lang=zh-cn&m&t`, {
headers: {
"Content-Type": "image/png",
"Accept-Language": "zh-cn",
},
});
response = await response.blob();
let url = await convertBlobToDataUrl(response);
return url;
};