在 Cloudflare worker 上使用 HTMLRewriter 设置属性
Setting attribute using HTMLRewriter on Cloudflare worker
我正在尝试通过 Cloudflare worker 设置我的#email 字段的值属性。
我将我的电子邮件定义为 test@test.com
,但如何将其发送到 ElementHandler
?
目前我可以将 value 属性设置为 XXXX
,这成功了。
async function handleRequest(request) {
const newResponse = new Response(response.body, response)
const email = 'test@test.com';
return new HTMLRewriter()
.on("#email", new ElementHandler())
.transform(newResponse)
}
class ElementHandler {
element(e) {
e.setAttribute('value', 'XXXX')
}
}
addEventListener("fetch", event => {
event.respondWith(handleRequest(event.request))
})
你可以给你的 ElementHandler
class 一个构造函数,它接受你存储在对象属性中的参数:
class ElementHandler {
constructor(value) {
this.value = value;
}
element(e) {
e.setAttribute('value', this.value)
}
}
然后构造如下:
new ElementHandler(email)
我正在尝试通过 Cloudflare worker 设置我的#email 字段的值属性。
我将我的电子邮件定义为 test@test.com
,但如何将其发送到 ElementHandler
?
目前我可以将 value 属性设置为 XXXX
,这成功了。
async function handleRequest(request) {
const newResponse = new Response(response.body, response)
const email = 'test@test.com';
return new HTMLRewriter()
.on("#email", new ElementHandler())
.transform(newResponse)
}
class ElementHandler {
element(e) {
e.setAttribute('value', 'XXXX')
}
}
addEventListener("fetch", event => {
event.respondWith(handleRequest(event.request))
})
你可以给你的 ElementHandler
class 一个构造函数,它接受你存储在对象属性中的参数:
class ElementHandler {
constructor(value) {
this.value = value;
}
element(e) {
e.setAttribute('value', this.value)
}
}
然后构造如下:
new ElementHandler(email)