HTTP協(xié)議

HTTP協(xié)議

http協(xié)議
請(qǐng)求信息格式
GET / HTTP/1.1   請(qǐng)求行
Host: 127.0.0.1:8003  請(qǐng)求頭
Connection: keep-alive
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9
#空行
請(qǐng)求數(shù)據(jù)  username=ziwen password=666


get請(qǐng)求 請(qǐng)求數(shù)據(jù)部分是沒有數(shù)據(jù)的,get請(qǐng)求的數(shù)據(jù)在url上,在請(qǐng)求行里面,有大小限制,常見的get請(qǐng)求方式: 瀏覽器輸入網(wǎng)址,a標(biāo)簽
post請(qǐng)求 請(qǐng)求數(shù)據(jù)在請(qǐng)求體(請(qǐng)求數(shù)據(jù)部分) ,數(shù)據(jù)沒有大小限制, 常見方式:form表單提交數(shù)據(jù)

什么是HTTP協(xié)議

  • HTTP協(xié)議就是 超文本傳輸協(xié)議
  • 這個(gè)協(xié)議規(guī)定了在鏈接的過程中吮成,一次請(qǐng)求一次響應(yīng)之后就斷開鏈接供常,解釋了HTTP協(xié)議就是一種無狀態(tài),短鏈接的協(xié)議
  • 對(duì)于數(shù)據(jù)傳輸格式,都包含了頭和體
    • 在請(qǐng)求的過程中豪直,包含了請(qǐng)求頭和請(qǐng)求體雇逞,請(qǐng)求頭和請(qǐng)求體之間 通過兩個(gè)\r\n分隔,請(qǐng)求頭和請(qǐng)求頭之間通過一個(gè)\r\n 分隔
    • 在響應(yīng)過程中茁裙,也有響應(yīng)頭和響應(yīng)體塘砸,頭和體之間也通過\r\n分隔
  • 常見得到請(qǐng)求頭都有哪些
    • user-agent: 用什么瀏覽器訪問的網(wǎng)站
    • content-type:請(qǐng)求體是數(shù)據(jù)格式是什么(服務(wù)端按照格式要求進(jìn)行解析
  • 常見的請(qǐng)求格式:
    • post
    • get

HTTP理解

引子:

最近在好好了解http,發(fā)現(xiàn)對(duì)介紹http的第一句話【http協(xié)議是無狀態(tài)的晤锥,無連接的】就無法理解了:無狀態(tài)的【狀態(tài)】到底指的是什么掉蔬?!

找了很多資料不僅沒有發(fā)現(xiàn)有一針見血正面回答這個(gè)問題的矾瘾,而且有些解釋還充斥了各種錯(cuò)誤女轿,看著看著就覺得心里憋著一股濁氣吐不出來

于是在看了很多資料之后,我一口吐出濁氣壕翩,大聲正面提出這個(gè)問題:http協(xié)議無狀態(tài)中的【狀態(tài)】到底指的是什么蛉迹?!

然后開始不斷探索解決這個(gè)問題放妈。北救。。

最終很高興的是我找到了讓人滿意的答案芜抒,先賣個(gè)關(guān)子珍策,各位如果著急可以直接拉到最下查看

正文:http協(xié)議無狀態(tài)中的【狀態(tài)】到底指的是什么?宅倒!

先來看這句話的另外兩個(gè)概念:(標(biāo)準(zhǔn)的http協(xié)議是無狀態(tài)的攘宙,無連接的)

  1. 標(biāo)準(zhǔn)的http協(xié)議指的是不包括cookies, session,application的http協(xié)議拐迁,他們都不屬于標(biāo)準(zhǔn)協(xié)議蹭劈,雖然各種網(wǎng)絡(luò)應(yīng)用提供商,實(shí)現(xiàn)語言唠亚、web容器等链方,都默認(rèn)支持它
  2. 無連接指的是什么
    1. 每一個(gè)訪問都是無連接,服務(wù)器挨個(gè)處理訪問隊(duì)列里的訪問灶搜,處理完一個(gè)就關(guān)閉連接祟蚀,這事兒就完了,然后處理下一個(gè)新的
    2. 無連接的含義是限制每次連接只處理一個(gè)請(qǐng)求割卖。服務(wù)器處理完客戶的請(qǐng)求前酿,并收到客戶的應(yīng)答后,即斷開連接

對(duì)于【無狀態(tài)】鹏溯,我看到很多隔著一層磨砂玻璃一樣的模糊說法(官方或者教程里的說法)罢维,看著非常難受(但其實(shí)算是對(duì)的)(后來我發(fā)現(xiàn)我為什么覺得它看著難受了,因?yàn)樗麄円肓撕芏嘈碌谋欤颐黠@是一個(gè)可能用在很多地方的廣義名詞肺孵,這些詞最大的作用就是匀借,混淆概念,下面我標(biāo)注了)

  1. 協(xié)議對(duì)于事務(wù)處理沒有記憶能力【事物處理】【記憶能力】
  2. 對(duì)同一個(gè)url請(qǐng)求沒有上下文關(guān)系【上下文關(guān)系】
  3. 每次的請(qǐng)求都是獨(dú)立的平窘,它的執(zhí)行情況和結(jié)果與前面的請(qǐng)求和之后的請(qǐng)求是無直接關(guān)系的吓肋,它不會(huì)受前面的請(qǐng)求應(yīng)答情況直接影響,也不會(huì)直接影響后面的請(qǐng)求應(yīng)答情況【無直接聯(lián)系】【受直接影響】
  4. 服務(wù)器中沒有保存客戶端的狀態(tài)瑰艘,客戶端必須每次帶上自己的狀態(tài)去請(qǐng)求服務(wù)器【狀態(tài)】

我必須得到確切而具體的解釋是鬼!

這幾點(diǎn)給了我下一步思考的方向:

  1. 【服務(wù)器中沒有保存客戶端的狀態(tài),客戶端必須每次帶上自己的狀態(tài)去請(qǐng)求服務(wù)器 】這里的客戶端的狀態(tài)是不是確切地指服務(wù)器沒有保存客戶的信息呢紫新?但顯然不是啊
  2. 【HTTP無狀態(tài)的特性嚴(yán)重阻礙了這些應(yīng)用程序的實(shí)現(xiàn)均蜜,畢竟交互是需要承前啟后的,簡(jiǎn)單的購物車程序也要知道用戶到底在之前選擇了什么商品】我對(duì)此質(zhì)疑為什么無狀態(tài)就不能實(shí)現(xiàn)購物車呢芒率?服務(wù)器就不能存儲(chǔ)東西了么囤耳?
  3. 【 每次的請(qǐng)求都是獨(dú)立的,<它的執(zhí)行情況和結(jié)果>與<前面的請(qǐng)求>和<之后的請(qǐng)求>是無直接關(guān)系的】我覺得這個(gè)說法比較靠譜敲董,但是所謂的不同請(qǐng)求間的沒有關(guān)系紫皇,是指的請(qǐng)求內(nèi)容沒有關(guān)系,還是只是指請(qǐng)求本身沒有關(guān)系腋寨?
    1. 請(qǐng)求內(nèi)容沒有關(guān)系只可能是服務(wù)器上不存有用戶數(shù)據(jù)才可能啊聪铺,但是顯然是存有的啊
    2. 請(qǐng)求本身沒有關(guān)系,這又有什么意義呢萄窜,每一次的請(qǐng)求有什么價(jià)值铃剔?

根據(jù)這個(gè)方向我做了一個(gè)模擬訪問實(shí)驗(yàn):假如沒有cookie沒有session,只有http的時(shí)候查刻,那當(dāng)一個(gè)注冊(cè)用戶訪問這個(gè)購物網(wǎng)站的時(shí)候键兜,會(huì)發(fā)生這些事情:

  1. 前提情況:
    1. 服務(wù)器肯定為每個(gè)注冊(cè)用戶建立了數(shù)據(jù)表,記錄用戶的數(shù)據(jù)
    2. http是無連接的
  2. 第一步需要登錄
    1. 用戶通過http把用戶的用戶名和密碼發(fā)送給服務(wù)器穗泵,服務(wù)器把他們跟自己存有的用戶資料對(duì)比普气,如果一致,則返回信息登錄成功
  3. 然后用戶點(diǎn)擊某一商品頁
    1. 這個(gè)動(dòng)作相當(dāng)于輸入一個(gè)商品頁的網(wǎng)址
    2. 假如商品頁比較機(jī)密不對(duì)外公開佃延,需要是用戶才能訪問
    3. 而雖然http能傳送用戶名和密碼现诀,而且剛才也輸入了,還驗(yàn)證成功了履肃,但是因?yàn)榉?wù)器既不會(huì)記得你登錄的狀態(tài)仔沿,你的客戶端也不會(huì)存儲(chǔ)你剛才輸入的用戶名和密碼
    4. 所以因?yàn)檫@一次訪問因?yàn)闊o法確定你的身份,只能訪問失敗
      1. 這時(shí)候如果要解決這個(gè)問題尺棋,而且沒有cookie沒有session封锉,那就只能你在訪問網(wǎng)址的同時(shí)繼續(xù)帶上你的用戶名和密碼(繼續(xù)輸入咯)其實(shí)就像我現(xiàn)在的APP一樣
  4. 假設(shè)上一步的問題解決了,就是每次訪問的時(shí)候都會(huì)手動(dòng)輸入用戶名和密碼,然后現(xiàn)在的情況是:你已經(jīng)選了幾件商品在你的購物車中成福,你想再添加一件商品碾局,于是你點(diǎn)擊某個(gè)商品旁邊的加號(hào)
    1. 這個(gè)動(dòng)作也相當(dāng)于輸入一個(gè)網(wǎng)址,網(wǎng)址的內(nèi)容是發(fā)送一個(gè)請(qǐng)求奴艾,往你的購物車中加入這個(gè)商品
    2. 系統(tǒng)首先用你傳來的用戶名和密碼驗(yàn)證你的身份擦俐,然后訪問你的數(shù)據(jù)庫,在其中的購物車屬性下加一條數(shù)據(jù)握侧,就是這個(gè)商品的數(shù)據(jù)
    3. 操作結(jié)束后,返回操作成功嘿期,并結(jié)束訪問
  5. OK品擎,實(shí)驗(yàn)結(jié)束,看似沒有cookie沒有session也能湊合解決問題备徐,其實(shí)兩個(gè)操作都有很大的問題
    1. 你每訪問一次需要權(quán)限的內(nèi)容都需要在客戶端輸入用戶名和密碼萄传,這一項(xiàng)的繁瑣就不必贅述了
    2. 你的每一次操作都要與系統(tǒng)底層的數(shù)據(jù)庫進(jìn)行交互
      1. 多次少量的訪問存在非常大的性能浪費(fèi)。非常容易就能想到肯定是一次大量的操作更加有效率蜜猾,于是就想到了緩存區(qū)
    3. 你的非重要瑣碎數(shù)據(jù)也被寫進(jìn)數(shù)據(jù)庫中秀菱,跟你的主要數(shù)據(jù)放在一起
      1. 一次次添加和刪除購物車其實(shí)只是跟你這次瀏覽,或者叫這次會(huì)話有關(guān)蹭睡,是臨時(shí)的數(shù)據(jù)衍菱,跟用戶的主要信息無關(guān),它們沒什么價(jià)值肩豁,純粹的冗余數(shù)據(jù)(不排除現(xiàn)在有的公司覺得這種數(shù)據(jù)也有非常大的價(jià)值可以讓它們巧妙的利用)脊串,用什么存放這些臨時(shí)的數(shù)據(jù),我們也很容易想到緩存區(qū)

經(jīng)過這個(gè)模擬訪問實(shí)驗(yàn)清钥,結(jié)合前面的思考方向琼锋,我們知道了三點(diǎn):

  1. 服務(wù)器上肯定存有用戶的數(shù)據(jù),你提交的增刪改查它也能夠處理祟昭,所以這句話中【服務(wù)器中沒有保存客戶端的狀態(tài)】的狀態(tài)并不是指用戶的數(shù)據(jù)缕坎,我們的猜測(cè)不對(duì)
  2. 我們的質(zhì)疑對(duì)了,無狀態(tài)能實(shí)現(xiàn)購物車篡悟,可以通過服務(wù)器上存有的用戶數(shù)據(jù)來實(shí)現(xiàn)
  3. 但是谜叹,使用上面這種方式實(shí)現(xiàn)購物車,存在三個(gè)比較大的問題恰力。由此叉谜,我們不禁會(huì)想,這三個(gè)問題的解決是不是跟我們不確切了解的【狀態(tài)】一詞有關(guān)踩萎?于是停局,接下來我們來通過解決這三個(gè)問題來把【狀態(tài)】的意義探尋下去

由上所述,我們可以在http的基礎(chǔ)上增加一些機(jī)制來解決上面出現(xiàn)的三個(gè)問題

  1. 在用戶端增加一個(gè)記錄本是非常有必要的,正好官方加入的cookie機(jī)制跟這個(gè)一樣董栽,它的用處也確實(shí)是上面討論的那樣码倦,一般就是用來標(biāo)識(shí)訪問者的身份
  2. 在服務(wù)器增加一個(gè)緩存區(qū)能同時(shí)解決后兩個(gè)問題
    1. 有了這個(gè)緩存區(qū)作為一個(gè)數(shù)據(jù)緩沖,就不用一次次地訪問數(shù)據(jù)庫锭碳,浪費(fèi)大量計(jì)算機(jī)資源袁稽,而是在最后統(tǒng)一歸入數(shù)據(jù)庫
    2. 有了這個(gè)緩存區(qū),你就不用把臨時(shí)的數(shù)據(jù)放到數(shù)據(jù)庫中了擒抛,只需要在你們交流告一段落之后推汽,再把數(shù)據(jù)整理,把有用的數(shù)據(jù)歸入數(shù)據(jù)庫
  3. 這里就自然引申出了一個(gè)重要的概念:會(huì)話歧沪,它作為一個(gè)緩沖存儲(chǔ)區(qū)被從數(shù)據(jù)庫中分離出來歹撒,理由并不生硬,它有其獨(dú)特的重要且不可替代的作用诊胞。這個(gè)東西恰好跟官方加入的session機(jī)制一樣
    1. 另外說一個(gè)非常具有迷惑性的容易讓人對(duì)session的主要作用產(chǎn)生偏離的理解:認(rèn)為session存在的價(jià)值就是給訪問者分配一個(gè)sessionID代替用戶名和密碼暖夭,
    2. 為什么非常具有迷惑性,因?yàn)閟ession確實(shí)做了這件事撵孤,而且也起到了很大的作用迈着,所以它是對(duì)的,但是只對(duì)一半邪码,而且沒有涉及問題的本質(zhì)裕菠,這種情況是最危險(xiǎn)的(看似很有說服力,把你說服了闭专,所以你很難有動(dòng)力繼續(xù)找下去糕韧,但是真實(shí)情況跟它有偏差,但是偏差不大喻圃,所以又很難把你說服回來萤彩,只有隱隱的不對(duì)勁,這個(gè)時(shí)候你離真實(shí)最近斧拍,也離真實(shí)最遠(yuǎn))
    3. 那就順便說說它為什么是對(duì)的雀扶,也就是用session做的另一件有用的事:
      1. 給每個(gè)session一個(gè)ID,一方面用來方便自己查詢肆汹,另一方面把這個(gè)ID給用戶愚墓,用戶下一次訪問的時(shí)候就可以不用用戶名和密碼,而是直接使用這個(gè)ID來表明自己的身份
      2. 首先昂勉,這個(gè)ID安全嗎浪册?這個(gè)ID比直接傳用戶名和密碼安全嗎?
        1. 你很容易會(huì)想到岗照,本來用戶名和密碼的組合還特地設(shè)置地比較復(fù)雜村象,你這換一組數(shù)字就代替了笆环,是不是太不安全了?
        2. 我們知道http協(xié)議本身是完全不加密的厚者,如果使用用戶名和密碼躁劣,第一次訪問是放在http頭中,后邊自動(dòng)保存了密碼就會(huì)放在cookie中库菲,這些都完全沒有加密账忘,它的安全性基本為0,就是裸奔了熙宇,只要被竊取鳖擒,那就丟失了
        3. 所以,就這個(gè)意義來講烫止,sessionID的安全性跟使用用戶名和密碼沒什么區(qū)別
        4. 但是其實(shí)败去,雖然http本身不能加密,但是有些軟件什么的烈拒,能在應(yīng)用層面手動(dòng)給你加密,比如QQ就會(huì)使用戶名密碼加臨時(shí)驗(yàn)證碼聯(lián)合哈希广鳍,sessionID加一個(gè)時(shí)間戳簡(jiǎn)單加密也是非常常用的方法
        5. 而且因?yàn)閟essionID本身有有效期荆几,即使丟了,也可能很快失效赊时,造成的損失可能沒那么大吨铸,而用戶名跟密碼丟了,那就大了
        6. 所以總結(jié)就是:
          1. 不嚴(yán)格加密的sessionID和用戶名和密碼一樣祖秒,都不太安全
          2. 但是相比較來說诞吱,sessionID要安全一些
          3. 而使用https是完全安全的
      3. 然后,使用sessionID有哪些好處
        1. 方便直接根據(jù)ID查詢用戶對(duì)應(yīng)的session
        2. 加密的時(shí)候計(jì)算量小
        3. 安全性不會(huì)降低竭缝,甚至還更高一些

OK房维,通過獨(dú)立地解決純http機(jī)制會(huì)產(chǎn)生的問題,我們探討了cookie和session機(jī)制的本質(zhì)抬纸。而且想到:【使用http協(xié)議咙俩,服務(wù)器中不會(huì)保存客戶端的狀態(tài)】所產(chǎn)生的問題通過增加cookie和session機(jī)制解決了,是不是就意味著這個(gè)【狀態(tài)】跟cookie和session的關(guān)系非常緊密湿故?所以這個(gè)無狀態(tài)指的是【沒有對(duì) 本次會(huì)話 設(shè)置一個(gè)緩存區(qū)阿趁,記錄這次會(huì)話的狀態(tài),緩存區(qū)包括服務(wù)器端和用戶端】但好像還是沒有點(diǎn)破關(guān)鍵(主要是覺得跟前面那些官方對(duì)狀態(tài)的說法不太吻合坛猪,甚至沒有對(duì)應(yīng)關(guān)系)

忽然我想到一個(gè)問題:一個(gè)有狀態(tài)的http是什么樣的脖阵?

  1. 很難直接想象有狀態(tài)的http是什么樣,因?yàn)閔ttp這種機(jī)制是天然無狀態(tài)的

  2. 那就類比一下吧墅茉,另一個(gè)天然有狀態(tài)的機(jī)制叫TCP

    1. 如果有狀態(tài)的意思是它的每次請(qǐng)求是有聯(lián)系的命黔,那么有狀態(tài)的TCP的樣子是:假如一份數(shù)據(jù)分了三份TCP包發(fā)送呜呐,那這個(gè)包上面會(huì)標(biāo)明這是第幾個(gè)包,會(huì)標(biāo)明這個(gè)包跟那幾個(gè)包是有聯(lián)系的纷铣,有什么聯(lián)系
  3. 但好像這個(gè)有狀態(tài)的TCP跟我們想要的有狀態(tài)的HTTP沒有關(guān)系卵史,因?yàn)榧词姑看蝖ttp請(qǐng)求之間互相有聯(lián)系,它也不能解決上面提到的http無狀態(tài)的問題

  4. 誒搜立,等等以躯,好像能類比:

    1. 假如每個(gè)http連接都有一個(gè)簽名,于是第一次登陸成功之后啄踊,服務(wù)器就知道了這個(gè)簽名是允許登陸的忧设,于是之后所有同樣簽名的http連接都能登陸,這里利用了同一個(gè)用戶發(fā)出的http連接之間的同主人關(guān)系颠通,這里解決了一個(gè)保持登錄狀態(tài)的問題

    2. 同樣址晕,來嘗試?yán)眠@個(gè)【每次http請(qǐng)求之間互相有聯(lián)系】來解決上面碰到的那個(gè)問題【每一次操作都要與系統(tǒng)底層的數(shù)據(jù)庫進(jìn)行交互】,但想了半天確實(shí)無法進(jìn)行下去

    3. 不過我靈機(jī)一動(dòng)顿锰,從另一個(gè)角度來想谨垃,好像解決了這個(gè)問題:

      1. 只有【每次http請(qǐng)求之間互相有聯(lián)系】這個(gè)條件,無法解決【每一次操作都要與系統(tǒng)底層的數(shù)據(jù)庫進(jìn)行交互】

      2. 因?yàn)楹苊黠@硼控,要解決【每一次操作都要與系統(tǒng)底層的數(shù)據(jù)庫進(jìn)行交互】就必須在服務(wù)器端開辟一塊緩存區(qū)

      3. 不過如果你思考一下如何實(shí)現(xiàn)【每次http請(qǐng)求之間互相有聯(lián)系】刘陶,你就會(huì)發(fā)現(xiàn),它也需要在服務(wù)器端開辟一塊緩存區(qū)

      4. 所以【在服務(wù)器端開辟一塊緩存區(qū)】才是真正的條件牢撼,也就是說匙隔,它確實(shí)等價(jià)于【有狀態(tài)】

      5. 而且我也找到了這個(gè)【在服務(wù)器端開辟一塊緩存區(qū)】的條件跟前面那些官方對(duì)狀態(tài)的說法對(duì)應(yīng)的點(diǎn),那就是:

        1. 通過在服務(wù)器端開辟一塊緩存區(qū)熏版,存儲(chǔ)纷责、記憶、共享一些臨時(shí)數(shù)據(jù)撼短,你就可以:
          1. 協(xié)議對(duì)于事務(wù)處理有記憶能力【事物處理】【記憶能力】
          2. 對(duì)同一個(gè)url請(qǐng)求有上下文關(guān)系【上下文關(guān)系】
          3. 每次的請(qǐng)求都是不獨(dú)立的再膳,它的執(zhí)行情況和結(jié)果與前面的請(qǐng)求和之后的請(qǐng)求是直接關(guān)系的【不獨(dú)立】【直接關(guān)系】
          4. 服務(wù)器中保存客戶端的狀態(tài)【狀態(tài)】
      6. 所以,這個(gè)狀態(tài)曲横,加上前面說的客戶端也有cookie饵史,就是指,

        客戶端和服務(wù)器在臨時(shí)會(huì)話中產(chǎn)生的數(shù)據(jù)

        胜榔!而前面也說道了胳喷,使用緩存區(qū)保存臨時(shí)會(huì)話中的數(shù)據(jù)是多么重要

        1. 所以狀態(tài)不僅包括不同URL訪問之間的關(guān)系,還有對(duì)其他URL訪問的數(shù)據(jù)記錄夭织,還有一些其他的東西吭露,所以更確切地說,狀態(tài)應(yīng)該是【實(shí)現(xiàn)了這些東西所憑借的后面的緩存空間】中的客戶的臨時(shí)數(shù)據(jù)
        2. cookie和session應(yīng)該是完全實(shí)現(xiàn)了有狀態(tài)這個(gè)功能

一種常見的對(duì)狀態(tài)的誤解:

  1. 有人在解釋HTTP的無狀態(tài)時(shí)尊惰,把它跟有連接對(duì)立讲竿,說是兩種方式泥兰,也就是如果想不無狀態(tài),就必須有連接题禀,但其實(shí)不然
  2. 有連接和無連接以及之后的Keep-Alive都是指TCP連接
  3. 有狀態(tài)和無狀態(tài)可以指TCP也可以指HTTP
  4. TCP一直有狀態(tài)鞋诗,HTTP一直無狀態(tài),但是應(yīng)用為了有狀態(tài)迈嘹,就給HTTP加了cookie和session機(jī)制削彬,讓使用http的應(yīng)用也能有狀態(tài),但http還是無狀態(tài)
  5. 開始TCP是有連接秀仲,后來TCP無連接融痛,再后來也就是現(xiàn)在TCP是Keep-Alive,有點(diǎn)像有連接
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末神僵,一起剝皮案震驚了整個(gè)濱河市雁刷,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌保礼,老刑警劉巖沛励,帶你破解...
    沈念sama閱讀 206,311評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異炮障,居然都是意外死亡目派,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,339評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門铝阐,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人铐拐,你說我怎么就攤上這事徘键。” “怎么了遍蟋?”我有些...
    開封第一講書人閱讀 152,671評(píng)論 0 342
  • 文/不壞的土叔 我叫張陵吹害,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我虚青,道長(zhǎng)它呀,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,252評(píng)論 1 279
  • 正文 為了忘掉前任棒厘,我火速辦了婚禮纵穿,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘奢人。我一直安慰自己谓媒,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,253評(píng)論 5 371
  • 文/花漫 我一把揭開白布何乎。 她就那樣靜靜地躺著句惯,像睡著了一般土辩。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上抢野,一...
    開封第一講書人閱讀 49,031評(píng)論 1 285
  • 那天拷淘,我揣著相機(jī)與錄音,去河邊找鬼指孤。 笑死启涯,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的邓厕。 我是一名探鬼主播逝嚎,決...
    沈念sama閱讀 38,340評(píng)論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼详恼!你這毒婦竟也來了补君?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 36,973評(píng)論 0 259
  • 序言:老撾萬榮一對(duì)情侶失蹤昧互,失蹤者是張志新(化名)和其女友劉穎挽铁,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體敞掘,經(jīng)...
    沈念sama閱讀 43,466評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡叽掘,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,937評(píng)論 2 323
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了玖雁。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片更扁。...
    茶點(diǎn)故事閱讀 38,039評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖赫冬,靈堂內(nèi)的尸體忽然破棺而出浓镜,到底是詐尸還是另有隱情,我是刑警寧澤劲厌,帶...
    沈念sama閱讀 33,701評(píng)論 4 323
  • 正文 年R本政府宣布膛薛,位于F島的核電站,受9級(jí)特大地震影響补鼻,放射性物質(zhì)發(fā)生泄漏哄啄。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,254評(píng)論 3 307
  • 文/蒙蒙 一风范、第九天 我趴在偏房一處隱蔽的房頂上張望咨跌。 院中可真熱鬧,春花似錦硼婿、人聲如沸虑润。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,259評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽拳喻。三九已至哭当,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間冗澈,已是汗流浹背钦勘。 一陣腳步聲響...
    開封第一講書人閱讀 31,485評(píng)論 1 262
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留亚亲,地道東北人彻采。 一個(gè)月前我還...
    沈念sama閱讀 45,497評(píng)論 2 354
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像捌归,于是被迫代替她去往敵國和親肛响。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,786評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容