asp.net - 如何将表单从 HTML POST 到 ASPX 页面

标签 asp.net

如何将表单从 HTML 页面发布到 ASPX 页面 (2.0) 并能够读取值?

我目前有一个使用 Membership 提供程序的 ASP.NET 站点,并且一切正常。用户可以从 Login.aspx 页登录。

我们现在希望能够让用户直接从另一个网站登录——这基本上是一个静态的 HTML 页面。用户需要能够在此 HTML 页面上输入他们的姓名和密码,并将其 POST 到我的 Login.aspx 页面(然后我可以在其中手动登录)。

是否可以将表单值从 HTML 传递到 ASPX?我已经尝试了所有方法,但 Request.Form.Keys 集合始终为空。我不能使用 HTTP GET,因为这些是凭据,不能通过查询字符串传递。

我所知道的唯一方法是 iframe。

最佳答案

这是很有可能的。我模拟了 3 页,应该可以给你一个概念证明:

.aspx 页面:

<form id="form1" runat="server">
    <div>
        <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
        <asp:TextBox TextMode="password" ID="TextBox2" runat="server"></asp:TextBox>
        <asp:Button ID="Button1" runat="server" Text="Button" />
    </div>
</form>

后面的代码:
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
    For Each s As String In Request.Form.AllKeys
        Response.Write(s & ": " & Request.Form(s) & "<br />")
    Next
End Sub

单独的 HTML 页面:
<form action="http://localhost/MyTestApp/Default.aspx" method="post">
    <input name="TextBox1" type="text" value="" id="TextBox1" />
    <input name="TextBox2" type="password" id="TextBox2" />
    <input type="submit" name="Button1" value="Button" id="Button1" />
</form>

...它会按预期反刍形式值。如果这不起作用,正如其他人建议的那样,请使用流量分析工具(fiddler、ethereal),因为某些事情可能不会发生在您期望的地方。

关于asp.net - 如何将表单从 HTML POST 到 ASPX 页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/209301/

相关文章:

javascript - asp.net 中的 RegularExpressionValidator 不适用于 1 位或 2 位数字

asp.net - 当前用户登录后始终为空

jquery - ASP.NET 中的交互式仪表板

asp.net - 读取 HTML 表格数据/html 标签

asp.net - 在 ASP.NET 面板中查找所有控件?

c# - ASP.NET Core 2.1 区域路由不起作用

c# - 找不到路径的一部分 - ASP.net/C# 图片上传

c# - StreamReader C# - 只读取特定行

c# - 浏览器的后退按钮在 ASP.NET 应用程序中随机禁用

javascript - 如何在 AngularJS 中循环数组并将值放入唯一标签中