Javascript 开始使用Cloudflare';s HTMLRewriter
我在使用HTMLRewriter方面是一个全新的人,但是我有一些js/html方面的经验。我的任务相对简单,但我真的不确定HTMLRewriter是如何工作的。我需要做的是 检索静态HTML页面 从以前部署的JSON响应获取链接 使用HTMLRewriter将这些链接添加到静态HTML页面 从Worker返回已转换的HTML页面 我有网址“https://static-links-page.signalnerve.workers.dev/,“但它不是本地的。所以我想知道的是,;为了使用HTMLRewriter进行更改,复制/存储此静态html页面的正确方法是什么 其次,我应该如何使用HTMLRewriter将自己的JSON url数组添加到检索到的HTML页面?我读过关于setInnerContent函数的内容,但不确定这是否是我应该使用的 最后,我很确定这很简单,但是返回修改后的html页面的正确方法是什么 同样,我的经验是一起编写html/js,因此我几乎没有在单个js文件中完成所有工作的经验,这是我理解cloudflare的最大好处之一。我可能没有正确地处理这个问题,问了错误的问题,或者完全偏离了正轨,因此非常感谢您的帮助 到目前为止,我的代码虽然存在明显缺陷,但如下所示:Javascript 开始使用Cloudflare';s HTMLRewriter,javascript,html,json,cloudflare,cloudflare-workers,Javascript,Html,Json,Cloudflare,Cloudflare Workers,我在使用HTMLRewriter方面是一个全新的人,但是我有一些js/html方面的经验。我的任务相对简单,但我真的不确定HTMLRewriter是如何工作的。我需要做的是 检索静态HTML页面 从以前部署的JSON响应获取链接 使用HTMLRewriter将这些链接添加到静态HTML页面 从Worker返回已转换的HTML页面 我有网址“https://static-links-page.signalnerve.workers.dev/,“但它不是本地的。所以我想知道的是,;为了使用HTMLR
addEventListener('fetch', event => {
event.respondWith(handleRequest(event.request))
})
/**
* Respond with hello worker text
* @param {Request} request
*/
var myArray = [
{
"name": "Github", "url": "https://github.com/"
},
{
"name": "LinkedIn", "url": "https://linkedin.com/"
},
{
"name": "Firebase", "url": "https://test-login-1573079166139.firebaseapp.com/"
}
]
async function handleRequest(request) {
//I am not sure if this is the correct way to copy/store a webpage
var basic_response = fetch('https://static-links-page.signalnerve.workers.dev');
//I know I have to do something here with this .on() function
const rewriter = new HTMLRewriter(basic_response)
.on()
const url = new URL(request.url)
console.log(rewriter);
var pathname = url.pathname;
if (pathname == '/links')
{
var obj = JSON.stringify (myArray);
return new Response(obj, {
headers: { 'content-type': 'application/json' },
})
}
else
{
var result = JSON.stringify (rewriter);
//This does not work, and I am not sure what the correct way
//to return my modified webpage would be
return new Response(rewriter, {
headers: { 'content-type': 'application/json' },
})
}
}