【问题标题】:Create Temporary Webpage with Randomly Generated URL使用随机生成的 URL 创建临时网页
【发布时间】:2023-03-10 00:21:01
【问题描述】:

好的,所以我正在尝试编写一个创建临时网页(有点)的小应用程序,但我无法弄清楚需要发生什么才能使其正常工作。

让我解释一下我正在尝试做的事情,这应该会有所帮助。基本上,我想要app.com,当用户去那里时,会有一个像“制作临时页面”之类的按钮。单击它,然后它会生成一个随机 URL 扩展并将访问者放在那里,例如 app.com/admin/xxyy12。现在用户可以将 URL app.com/xxyy12 提供给某人,他们可以在那里导航并在彼此之间来回发送数据,我的想法是通过 WebSockets。因此,我希望创建链接的人成为各种管理员,当他们离开那个“管理员”页面时,我希望它和 app.com/xxyy12 基本上自毁,没有人可以去那里,这条路线不再存在。

这可能吗?我应该研究哪些技术来实现这一点?我认为在没有服务器的情况下在浏览器中完成这一切会很酷,这会破坏一些安全性,但我并不真正关心这一点。我也不确定如何创建这些“临时”页面。我认为 WebSockets 会派上用场,可以在创建链接的人和访问它的客户端之间发送数据,并且我认为主页面 app.com 需要一个套接字到app.com/admin/xxyy12 的用户,以确定它何时断开连接。此外,我认为 html 参数基本上是创建一个“临时” URL,它只会读取参数,然后将客户端连接到 URL 创建者。还需要有一种方法来存储存在的活动临时页面。

我承认这个问题相当模糊,但我想我只是在寻找有关如何完成此任务以及推荐哪些技术的想法。感谢您的所有帮助。

【问题讨论】:

  • 您需要 http,而不是套接字,因为您需要为页面提供服务。或者重写所有相关的 url,但这可能很难,尤其是在 CSS 导入的深处......
  • 如果你不需要导航,只需要一个页面,那么你可以使用嵌入在 html 中的 dataURL,然后只需采摘document.documentElement.outerHTML,然后在查看器上,bigIframe.contentDocument.write( theOuterHTML)

标签: javascript html node.js websocket


【解决方案1】:

这应该很容易实现。 我会使用: 服务器上的 Node.js express.js 和 socket.io(如果需要)

快递: 创建路由以提供页面

app.get('/', function(req, res){
//render homepage here
});
app.post('/', function(req,res){
// handle creating temp pages here and
// redirect client to that page
// save ID of the page to db
});
app.get('/:pageId', function(req,res){
// handle rendering the temp page by ID
});
app.post('/destroy', function(req,res){
// remove page from db
});

我认为你可以从客户端发布关于 javascript 卸载消息,所以也许不需要 websockets 但我不确定它有多可靠

希望对你有帮助

【讨论】:

    【解决方案2】:

    我想出了如何得到我想要的东西。我基本上制作了一个随机字符串并将其添加到 url 的末尾,并在开头添加一个“#”。然后我可以使用 location.hash.substring 来提取随机字符串。此字符串充当“唯一”标识符以将对等点连接在一起。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-04-14
      • 2013-02-22
      • 1970-01-01
      • 2015-09-16
      • 2020-10-31
      • 2013-03-17
      • 2012-02-12
      • 2014-05-05
      相关资源
      最近更新 更多