2016-12-29 77 views
-1

如何在新窗口中设置标题并打开url(https://www.example.com)。我必须发送认证信息头,因为它的敏感信息不应该是url请求参数的一部分。Angular js如何设置标题在新窗口中获取url

我正在使用angularjs来做到这一点。

我已经经历了现有的问题。提到 Convert $.param in angularjs how to add authentication header to $window.open Open a PDF in a new window of the browser with angularjs

解决方案的附加令牌的url,有些是不是为我工作。请帮助我..

+0

我建议你做一些加密,并将其传递到URL中,以便用户不能理解它。 –

+0

@VenkateshKonatham - 这是一个密码。用户不需要了解它,只需复制它。 – Quentin

+0

您的标题在服务器端进行设置,而不是从客户端进行设置。您的(example.com)网站是否由您的组织控制?如果是的话 - 先制作一些隐藏的Ajax请求,将您的令牌保存到Cookie中,然后从Cookie中使用它。 – VadimB

回答

0

没有办法指定的HTTP标头浏览器发送当它加载一个新的页面。

你能来将最接近:

  1. 打开窗口中有一个新的文档
  2. 将JavaScript的在文档,其中:
    1. 使用XMLHttpRequest来加载数据(与你想要的标题)
    2. 用该数据修改显示页面的内容
    3. 使用历史记录API更改URL

这将防止肩窥嗅探从URL的凭据...但它是解​​决问题的一种非常复杂的方式。发布时间有限的证书并将其包含在URL中会更简单,并且使其成为足够复杂的字符串以使其难以复制。

没有任何技术可以阻止人们查看页面的源代码或使用浏览器中的开发人员工具来观看HTTP请求并在那里复制数据,因此,如果您的目标是让用户访问某些内容而不让用户访问提供该访问权限的凭据,那么你运气不好。