-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.js
50 lines (44 loc) · 995 Bytes
/
index.js
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
import { Miniflare } from "miniflare";
const mf = new Miniflare({
workers: [
{
wrappedBindings: {
Greeter: {
scriptName: "impl",
},
},
modules: true,
script: `
export default {
fetch(req, env){
return new Response(env.Greeter.sayHello('Miniflare'));
}
}
`,
},
{
modules: true,
name: "impl",
script: `
export default function (env) {
return {
sayHello(name) {
return "Hello " + name;
}
}
}
`,
},
],
});
const resp = await mf.dispatchFetch("http://localhost");
const text = await resp.text();
console.log(`Response from Miniflare: "${text}"\n`);
try {
const { Greeter } = await mf.getBindings();
console.log(Greeter.sayHello('world'));
} catch (e) {
console.error(`❌ Calling Greeter.sayHello throws with "${e.message}"`);
}
console.log('');
await mf.dispose();