【问题标题】:ASP check request methodASP检查请求方法
【发布时间】:2010-01-24 19:57:04
【问题描述】:

如何检查我的表单是否已在经典 ASP 中提交?

【问题讨论】:

  • 也许,检查referrer的扩展名
  • 这是一个不清楚的问题。你想知道什么 ?当您按下提交时,如果表单离开客户端前往服务器?数据是作为表单(post)而不是查询字符串数据(get)接收的吗?服务器处理的数据没有错误吗?这里的选项太多了。

标签: asp-classic


【解决方案1】:

首先,您可以检查,如果Request.ServerVariables("REQUEST_METHOD")= "POST"。即假设你使用POST方式提交表单,初始加载会有GET方式,后续提交都是POST方式。

您还可以在表单中添加隐藏字段,如果该变量在 POST 数据中设置(Request.Form 对象),您将知道这是回发,否则是第一次加载。

【讨论】:

  • 检查请求方法和推荐人会给你类似 PostBack 的东西 :)
【解决方案2】:
Function IsPostBack()
  IsPostBack = false    
  If Request.ServerVariables("REQUEST_METHOD") <> "POST" Then
    Exit Function       
  End If
  Dim referer: referer = Request.ServerVariables("HTTP_REFERER")
  Dim current: current = Request.ServerVariables("HTTP_ORIGIN") & Request.ServerVariables("SCRIPT_NAME")
  Dim i: i = InStr(1, referer, "?", 1)
  If i > 1 Then
    referer  = Left(referer, i - 1)
  End If
  IsPostBack = LCase(current) = LCase(referer)
End Function

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-02-26
    • 1970-01-01
    • 2019-01-19
    • 1970-01-01
    • 2013-07-31
    • 2021-09-12
    • 2015-01-23
    相关资源
    最近更新 更多