zoukankan      html  css  js  c++  java
  • Asp.Net_Get跟Post

    1. Get(即使用QueryString显式传递)
         方式:在url后面跟参数。
         特点:简单、方便。
         缺点:字符串长度最长为255个字符;数据泄漏在url中。
         适用数据:简单、少量、关键的数据。
         适用范围:传递给自己、传递给另一个目标页面;常用于2个页面间传递数据。
         用法:例如:url后加?UserID=…,跳转到目标页面,目标页面在伺服端可用Request.QueryString["InputText"]获取其指定参数值。

      取值:Response.Redirect(s_url); 

    2. Post
         方式:通用的方式。利用form提交。
         特点:最常用的方法。常用技巧是把隐秘的数据存在隐藏域中由form提交。
         适用数据:大量数据,包括文件上传
         适用范围:同Get方法
         用法:在客户端form指定action目标后submit、在asp.net的伺服端中使用server.Transfer(url)提交;在伺服端中用Request.Form["FormFieldID"]获取。

    例:get,post分别取值

    public object string GetValueFromPage(string inputName,int type)
      {
                HttpContext rq = HttpContext.Current;
                object TempValue = "";

                if (type==1)
                {
                    if (rq.Request.Form[inputName] != null)
                    {
                        TempValue = rq.Request.Form[inputName];
                    }

                }
                else if (type==0)
                {
                    if (rq.Request.QueryString[inputName] != null)
                    {
                        TempValue = rq.Request.QueryString[inputName];
                    }
                }
                return TempValue;
    }

    -----其他几种传值的优缺点

    cookie
         方式:将数据存在客户端的经典方法。
         缺点:安全性低、受客户端设置限制、一个站点仅存20个cookie,每个容量4096字节。

    Session
         方式:将用户数据存储在伺服端。
         特点:asp.net中可以设置session的存储方式、位置、SessionID的保存是否依赖cookie。
                 可以直接存储对象。 
         缺点:asp.net中有失效的隐患
    Cache
         方式:将用户数据存储在伺服端数据缓存中。 
         特点:可以大大提高效率。 可以直接存储对象。
    Appliction
         方式: 将数据存储于此,相当于全局变量。 
         特点:可以直接存储对象。整个站点的共享数据
    ViewState
         方式:asp.net特有机制,用来恢复页面状态。 
         特点:将页面各控件及其所存数据序列化存在name为_ViewState的隐藏域中。
         缺点:存在HTML中,安全性较低。可以设置加密和验证,但数据量会大增、效率有影响。
    Static
         方式: 将数据存于静态变量中。 
         特点:利于提高效率。
         缺点:若用不好会致使用户或页面间数据紊乱,造成极大的隐患。建议只赋值一次,绝对禁止为单个用户而更改此值。

  • 相关阅读:
    call()与apply()的作用与区别
    Tomcat8/9的catalina.out中文乱码问题解决
    怎样查看Jenkins的版本
    每日日报2020.8.18
    528. Random Pick with Weight
    875. Koko Eating Bananas
    721. Accounts Merge
    515. Find Largest Value in Each Tree Row
    286. Walls and Gates (Solution 1)
    408. Valid Word Abbreviation
  • 原文地址:https://www.cnblogs.com/ingstyle/p/4076547.html
Copyright © 2011-2022 走看看