2010-03-02 15:26 by ╭☆澀 軌ら, 127 visits,
網摘,
收藏, 編輯
首先還是來解釋一下博文的標題意義吧,
何為匿名狀態,何為登入狀態,又何為匿名狀態遷移至登入狀態?
匿名狀態就是沒有登入這個**而對**進行訪問的狀態,
而登入狀態則是使用者成功登入了**,
而從匿名狀態遷移至登入狀態就是乙個使用者一開始並沒有登入,
而是以匿名的身份證登入這個**,而後瀏覽了一會兒又想登陸來發表篇博文,
這就是從匿名狀態遷移至登入狀態,
貌似這裡沒有什麼好介紹的呢?
不過,再請考慮乙個問題,就是比如說使用者去購物吧,
使用者購物一般都是在購物**上先以匿名身份選擇要買的商品,
而後等選好了以後,使用者便進行登陸,然後付款等等後續工作,
但是,這其中會有乙個問題,就是使用者以匿名身份選擇的商品怎麼遷移至登入狀態呢?
也就是以匿名身份選擇的商品,登入後還要儲存這些商品來進行付款!!!
先來看乙個單詞吧----migration,就是遷移的意思,大夥先記住這個單詞,
等下後面就會知道其用處了,
下面在介紹 demo 之前呢,還是先講一下乙個檔案 global.asax ,也就是全域性應用程式類,
您可以在這個檔案中使用 profile_migrateanonymous 全域性事件
來訪問 profilemodule 類的 migrateanonymous 事件,
而當匿名使用應用程式的使用者進行登陸時,就會觸發 profile_mirateanonymous 事件,
所以就可以使用 migrateanonymous 事件將配置檔案 profile 的屬性值
從匿名 profile 複製到已驗證身份的使用者的配置檔案中去
這樣便完成了匿名狀態到登入狀態資訊的乙個完整的遷移。
下面就來看乙個 demo 吧
">
然後還得開一下 global.asax 中的 profile_migrateanonymous 事件的定義
在這個事件中呢,完成了將資訊從匿名使用者的 profile 中轉存到了登入狀態的 profile 中,
同時也刪除了這個匿名使用者在資料表 aspnet_profile 和 aspnet_users 中的資料,
並且也清除了為這個匿名使用者在客戶端生成的 cookie 檔案
下面就來看演示了
首先,直接以匿名方式瀏覽這個 demo
然後您開啟您機器上儲存 cookie 的地方,您可以看到新建了乙個 cookie 檔案
這個 cookie 便是 asp.net 為此次瀏覽的匿名使用者分配的 guid 儲存的位置,
然後您選擇乙個頭像進行儲存
此時再來看資料表 aspnet_users
這裡就可以看到在資料表中新增了乙個匿名使用者
然後再來看資料表 aspnet_profiles
這裡就可以知道剛剛新增的資訊時新增給了匿名使用者的
接下來就要進行登陸了
(以 chengyan 進行登陸,
在這個登陸過程中會觸發在 global.asax 中定義的 profile_migrateanonymous 事件,
所以一開始的匿名使用者資訊會在 aspnet_uses 表和 aspnet_profile 表中均刪除
同時也會刪除這個匿名使用者在客戶端的 cookie)
登陸成功後,您再去看您客戶機 cookie 所在的位置,
剛才上面截圖的那個 xiaozhen@localhost[1].txt
的 cookie 檔案便被刪除了,
然後再來看資料表 aspnet_users ,您可以發現其中剛才的那個匿名使用者也被刪除了,
再來看資料表 aspnet_profile ,您會發現登入前的那個匿名使用者的 profile 也被刪除了,
而發現有乙個卻增加了屬性,也就是 chengyan 這個使用者,
其本來沒有**這個 profile 屬性的,當是登陸成功後,由於將匿名資訊遷移了過來,
所以其又有了**這個 profile 屬性
經過了上面的演示,我想大家也完整的看到了從匿名狀態遷移到登入狀態的全過程,
並且其中的一些要點,我也說得比較詳細了,這篇博文的目的也就達到了!!!
Linux中profile檔案詳解
1 linux是乙個多使用者的作業系統。每個使用者登入系統後,都會有乙個專用的執行環境。通常每個使用者預設的環境都是相同的,這個預設環境實際上就是一組環境變數的定義。使用者可以對自己的執行環境進行定製,其方法就是修改相應的系統環境變數。2 常在 etc profile檔案中修改環境變數,在這裡修改的...
bashrc 和 profile 檔案詳解
區別 系統級環境配置檔案 etc profile etc bashrc 使用者級環境配置檔案 bashrc profile etc profile 用來設定系統環境引數,比如 path.這裡面的環境變數是對系統內所有使用者生效的。etc bashrc 這個檔案設定系統bash shell相關的東西,...
使用者profile檔案引數詳解
profile檔案引數詳解 failed login attempt 設定登入到oracle資料庫時可以失敗的次數。一旦某使用者嘗試登入資料庫的達到該值時,該使用者的帳戶就被鎖定,只能由dba能解鎖。password life time 設定口令的有效時間 天數 一旦超過這一時間,必須重新設口令。預...