Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/404.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/237.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/unity3d/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在不使用用户ID的情况下为用户定义唯一URL?_Javascript_Php_Url_Hash_Jsfiddle - Fatal编程技术网

Javascript 如何在不使用用户ID的情况下为用户定义唯一URL?

Javascript 如何在不使用用户ID的情况下为用户定义唯一URL?,javascript,php,url,hash,jsfiddle,Javascript,Php,Url,Hash,Jsfiddle,大家晚上好,我想知道jsfiddle.net如何将页面内容保存在一个唯一的url中?例如:jsfiddle.net/u5jm5jq8。我想知道如何使用javascript实现这一点。因为您不一定要登录才能保存并生成唯一的url。这称为散列ID,通常是从数据库中实体的主键等唯一属性生成的唯一标识符。散列ID通常比加密散列算法(如MD5或SHA-256)创建的典型散列短,并且与这些算法不同,散列ID通常是可逆的,这意味着我们可以解码原始值。它们可以减少应用程序内部实现的暴露,从而提高安全性 退房。该

大家晚上好,我想知道jsfiddle.net如何将页面内容保存在一个唯一的url中?例如:jsfiddle.net/u5jm5jq8。我想知道如何使用javascript实现这一点。因为您不一定要登录才能保存并生成唯一的url。

这称为散列ID,通常是从数据库中实体的主键等唯一属性生成的唯一标识符。散列ID通常比加密散列算法(如MD5或SHA-256)创建的典型散列短,并且与这些算法不同,散列ID通常是可逆的,这意味着我们可以解码原始值。它们可以减少应用程序内部实现的暴露,从而提高安全性

退房。该站点提供各种编程语言的实现

除非您有充分的理由这样做,否则请避免在客户机中生成哈希ID。通过在服务器上创建散列ID,您可以保证ID是唯一的,并且与应用程序通过何种机制存储数据所使用的标识符一致

编辑评论-以下是在URL中使用哈希ID的过程:

假设我们正在使用散列ID创建指向用户配置文件的链接。当我们生成包含配置文件链接的页面时,我们的应用程序将:

  • 将用户ID(例如
    5
    )转换为哈希ID(例如
    3ac4jx60
  • 显示带有链接的页面,如
    http://example.com/user/3ac4jx60
  • 如果站点访问者单击该链接,应用程序将收到请求并:

  • 解码URL中的哈希ID以获取用户ID(
    3ac4jx60
    → <代码>5)
  • 使用用户ID获取适当的记录并显示用户的配置文件

  • 非常感谢。但是页面的内容是如何用唯一的id保存在url中的呢?你可以用一个例子来说明这一点的实现。页面的内容不是在URL中编码的,只是标识要在页面上显示的数据的值。例如,在保存JSFIDLE时,站点将代码保存在数据库中并带有ID,然后将该ID编码为哈希ID以供公共使用。当用户访问fiddle URL时,站点将哈希ID解码回数据库ID。我更新了我的答案来说明这个过程。