当然,当我在Google中使用开发人员工具并在新标签页中单击打开API文件时,我可以在下面看到数据。
但是当我尝试做同样的事情时,我去过网站,有一些安全措施导致新标签页中的打开显示" Unauthorized"消息而不是数据。
它不能是会话事件,因为我已正确登录。我认为这是由 WHAT 调用API文件确定的。
有没有人知道如何在我的ExpressJs javascript / angularjs应用程序中复制它?
{
username: "James Doe",
picture: "styles/person.png",
activity: 12
}
以下是GTDNext.com的示例
答案 0 :(得分:0)
好的,我找到了答案,我想与其他人分享,因为我认为在XHR数据方面在客户端添加一层安全性很有用。
请记住我正在使用棱角分明。
在我的app.config中,我创建了3个自定义$ httpProvider提供程序:
$httpProvider.defaults.headers.put['X-Posted-By'] = 'mySecretApp'
$httpProvider.defaults.headers.post['X-Posted-By'] = 'mySecretApp'
$httpProvider.defaults.headers.common['X-Requested-By'] = 'mySecretApp'
在我的节点控制器中,响应GET api调用,我有:
....
module.exports = {
all: function (req, res) {
if (req.header('x-requested-by') != "mySecretApp") {
return res.status(400).send({
message: errMsg.Util_ErrorMsg.getErrorMessage('Invalid requester')
});
};
现在,如果我通过浏览器正确检索数据,我就会得到数据。但是,如果我尝试从浏览器中直接打开api,则不会显示任何数据。 进一步加密数据将使其完全无法读取 开发人员工具 - >网络 - > XHR