通过另一页发布表单数据

时间:2018-11-20 14:46:36

标签: javascript html

首先,在使用CORS和X-header注释将其标记为重复之前,让我先说一下。.这个问题仅适用于本地环境。

我编写了一个以.NET为后端的网站,该网站使用Cookie和会话字符串来维护客户端和网站之间的身份验证。但是,我们的客户希望对所有用户一起禁用身份验证。这就是问题发生的地方,我们的系统依赖于这样的事实,即用户名和auth-data在大多数数据请求中都发送。因此,客户已同意使用带有静态设置的用户名和密码的静态页面(这样他们就不必每次都登录,而只需在桌面上打开chrome / firefox快捷方式)即可。该静态页面将重定向并将静态信息传递到“真实”登录页面并登录用户。

插图:

enter image description here

在这里我有什么选择?

这是成功登录后的req标头的屏幕截图。

enter image description here

谢谢。

1 个答案:

答案 0 :(得分:0)

您想从后端服务您的网站并分发指向您网站的链接。然后,您的客户端将链接添加为书签(或将其固定到其主屏幕)。

提供静态HTML文件具有基本限制,您迟早会遇到麻烦(例如,AJAX调用需要从某个域提供该网站)。

从这里开始,有两个选项可以满足您的需求。

正统路线是将凭据存储委派给基础操作系统。也就是说,只需照常编写输入表单,照常发出Cookie,并确保表单HTML使得浏览器可以保存凭据。

与您最初的建议有关的另一种解决方案是创建所谓的签名URL。您可以创建经过加密签名的网址(例如http://localhost/your/site?hmac=<your_signature>),然后将其交给客户。在服务器中处理该URL并确认签名有效后,您可以通过301重定向到您的站点进行响应,并在重定向响应中发出身份验证Cookie。

有关背景材料,您可能需要阅读Post/Redirect/GetMessage authentication codes