Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/305.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 如何在ASP.NET网站上按ID限制网站/链接访问?_Javascript_C#_Html_Asp.net - Fatal编程技术网

Javascript 如何在ASP.NET网站上按ID限制网站/链接访问?

Javascript 如何在ASP.NET网站上按ID限制网站/链接访问?,javascript,c#,html,asp.net,Javascript,C#,Html,Asp.net,我看到过与此类似的URL: www.example.com&ID=123xyz 我想建立我的网站,它只显示当有一个ID匹配到我的数据库中的ID 换句话说,如果有人在没有ID或不正确ID的情况下键入站点,则会出错或重定向,但如果他们有正确的ID,则会显示页面内容 我不太确定这是指什么,我在谷歌搜索或搜索时遇到了麻烦 这是一个带有mssql后端的asp.net应用程序。其思想是用户注册,然后在此过程中生成ID并存储在数据库中。为他们生成一个附加ID的新链接,此时他们可以使用/与任何人共

我看到过与此类似的URL:

  www.example.com&ID=123xyz
我想建立我的网站,它只显示当有一个ID匹配到我的数据库中的ID

换句话说,如果有人在没有ID或不正确ID的情况下键入站点,则会出错或重定向,但如果他们有正确的ID,则会显示页面内容

我不太确定这是指什么,我在谷歌搜索或搜索时遇到了麻烦

这是一个带有mssql后端的asp.net应用程序。其思想是用户注册,然后在此过程中生成ID并存储在数据库中。为他们生成一个附加ID的新链接,此时他们可以使用/与任何人共享该链接,并且由于该链接具有有效ID,因此将显示内容

这样,与他们共享链接的任何人都无需注册或登录即可查看页面


哪里是开始研究这个的好地方?或者其他网站通常是如何做到这一点的?

URL中的参数称为查询字符串参数。如上所述,我不会将其与用户id或任何类型的身份验证id绑定

在数据库中,您可以有另一个类似“page_share”的表,并有一列表示用户ID,另一列表示生成的pageId

然后在您的代码中可以有如下内容:

    // get pageid from  www.abc.com&pageid=123
    int pageId = int.Parse(Request.QueryString["pageid"]);

    // TODO: Query DB for pageid and show error if it does not exist and success if it exists 

授权是一个大话题,我们无法真正提供答案。我要提醒您,不要只查看查询字符串参数,而不验证是否允许用户查看该id的数据。我完全理解,这与敏感或个人信息无关。我甚至不知道如何在显示前验证URL参数的页面的宿主/设置。听起来你在寻找一个使用身份验证和/或授权的网站。这不是小事。此链接可能有助于您开始: