【问题标题】:Difference between Page refresh and Page postback页面刷新和页面回发的区别
【发布时间】:2010-05-19 10:18:22
【问题描述】:

我的问题是 - 页面刷新(如果我按 f5)和回发(如果我按一个按钮)有什么区别?

谁能告诉我?

提前致谢。

【问题讨论】:

    标签: asp.net


    【解决方案1】:

    刷新意味着页面的完全重新加载,没有任何表单数据。这本质上是一个 HTTP GET

    回发是指将页面发布到自身(通过form action="")。这本质上是一个 HTTP POST

    【讨论】:

    • 感谢奥德的回复。您能否告诉我按 f5 和选择 URL 并按 Enter 键之间也有什么区别? :)
    • @Mohit Kumar - 按 F5 时,您可能最终会重新发布表单数据(浏览器通常会对此发出警告)。选择 URL 并输入时,这将是一个 new 请求。
    • 再次感谢奥德。我不明白“您最终可能会重新发布表单数据”的含义。你能解释一下吗?
    • @Mohit Kumar - 这意味着如果您看到的页面是转发的结果,按 F5 可能会导致另一个转发。
    【解决方案2】:

    让我们来看看刷新和显式提交页面之间的实际区别:

    1) 刷新并不意味着用get方法回发页面..(可以用response.write request.form("some input type")查看)。

    2)区别在于发送到服务器的数据: 在显式提交表单的情况下以最新值提交(即它识别表单元素的更改) 但在刷新的情况下,表单会以默认表单值提交。(即,如果您更改表单元素的值,它将不会反映在服务器上。)

    【讨论】:

      【解决方案3】:

      当页面刷新时,这意味着页面正在向服务器发送请求而没有任何data,这意味着HTTP GET,但在另一种情况下,假设触发了一个导致回发之后的事件 如果我们按f5 or do refresh,页面完全加载到浏览器上,那么它将发送带有request instance的隐私数据,这意味着该数据服务器将再次执行操作...... 在选择商品并按下接受按钮后,您是否在进行在线购物时看到过总价,现在再次刷新,然后对于该选定商品,它将再次进入服务器,这意味着您购买了两次相同的东西.... .我想现在你明白了我想说的一切......

                                 in  when page is postback then code of that page again compile and also processing `request data`. this process will going on
      

      【讨论】:

        猜你喜欢
        • 2019-01-05
        • 1970-01-01
        • 1970-01-01
        • 2011-10-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多