javascript - 对具有 REST 服务的页面的访问控制

标签 javascript web-services rest

我已经阅读了很多关于使用 REST 服务进行身份验证、授权等的讨论。 我现在知道如何使用 REST 进行身份验证/授权。

但我没有得到的是,如何使用 REST 服务控制对网页的访问。 这是一个好习惯吗?如果是,怎么办?

示例:

  • REST 服务的根目录:localhost/services

  • 网页根目录:localhost/pages

现在,场景是:

1. 客户端尝试转到页面 localhost/pages/join.html但是,它没有访问权限。

2.因此,服务器应该检查客户端是否有权访问该页面,如果它没有权限,应该将客户端重定向到某个地方。

我的问题不是服务器如何检查,了解客户端是否正确。

但是,我想知道何时以及如何使用 REST 服务进行此检查和重定向。

例如,我想到的第一个想法是,在 join.html 的正文中, 与 <body onload>运行一个 javascript 检查客户端发送 JSON 消息到 REST 服务的访问权限,比方说,到 localhost/services/access .

然后,服务将返回它的答案,如果成功,页面将被加载,否则,它将被重定向到window.location.href。 .这是决定访问带有 REST 服务的网页的权限的方式吗?还有其他常见的解决方案/做法吗?

请再次注意,我不是在询问如何保护我的 REST API 等,而是

如何使用 REST 服务检查对我的网页的访问权限?

最佳答案

您可以将从 REST API 接收到的 token 发送到 Web 服务器,以使其保存在浏览器客户端的 session 对象中。

关于javascript - 对具有 REST 服务的页面的访问控制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16502811/

相关文章:

iphone - 如何将带有用户名和密码的 JSON 对象发送到 iPhone 中的 REST 登录 Web 服务?

web-services - "facade webservice"的监控和记录策略?

Facebook 的 Qt 客户端

javascript - 如何使用 jQuery 更改 Bootstrap 按钮属性

javascript - jQuery : trigger click and call a method with parameter

web-services - 如何从ArcGIS Online map 抓取数据?

java - 从属性文件创建动态 xml?

python - 在 Django 模板上显示来自 API 的数据

javascript - 使用 jquery/javascript 的 switch 语句和循环

javascript - 如果该项目被 ng-repeat 中的另一个选择框选中,则从 ng-option 中删除/隐藏该项目