網(wǎng)絡(luò)相關(guān)

http://www.reibang.com/p/a7666a73af0d

1.http

超文本傳輸協(xié)議,基于TCP/IP通信協(xié)議來傳遞數(shù)據(jù), 該協(xié)議用于規(guī)定客戶端與服務(wù)端之間的傳輸規(guī)則,所傳輸?shù)膬?nèi)容不局限于文本(其實(shí)可以傳輸任意類型的數(shù)據(jù));

步驟

客戶端與服務(wù)器建立連接

建立連接后,客戶端給服務(wù)端發(fā)送請(qǐng)求

服務(wù)器收到消息后,給與響應(yīng)操作

客戶端收到消息后,展示到屏幕上,斷開連接

域名解析 --> 發(fā)起TCP的3次握手 --> 建立TCP連接后發(fā)起http請(qǐng)求 --> 服務(wù)器響應(yīng)http請(qǐng)求棚菊,瀏覽器得到html代碼 --> 瀏覽器解析html代碼柳洋,并請(qǐng)求html代碼中的資源(如js、css孙援、圖片等) --> 瀏覽器對(duì)頁面進(jìn)行渲染呈現(xiàn)給用戶

請(qǐng)求報(bào)文主要包括: 請(qǐng)求行,請(qǐng)求頭,請(qǐng)求體

請(qǐng)求行: 請(qǐng)求行包含請(qǐng)求方法(Method)害淤、請(qǐng)求統(tǒng)一資源標(biāo)識(shí)符(URI)、HTTP版本號(hào)

請(qǐng)求頭:請(qǐng)求頭主要存放對(duì)客戶端想給服務(wù)端的附加信息 Host: 目標(biāo)服務(wù)器的網(wǎng)絡(luò)地址? Accept: 讓服務(wù)端知道客戶端所能接收的數(shù)據(jù)類型如text/html /Content-Length: body的長度 等等

請(qǐng)求體: 真正需要發(fā)給服務(wù)端的數(shù)據(jù)

響應(yīng)報(bào)文也包括三部分: 響應(yīng)行,響應(yīng)頭和響應(yīng)實(shí)體

狀態(tài)行 :是服務(wù)端返回給客戶端的狀態(tài)信息拓售,包含HTTP版本號(hào)窥摄、狀態(tài)碼、狀態(tài)碼對(duì)應(yīng)的英文名稱

響應(yīng)頭: 附加信息和請(qǐng)求頭類似

響應(yīng)體: 服務(wù)器返回的真正數(shù)據(jù)

HTTP 是一個(gè)屬于應(yīng)用層的面向?qū)ο蟮膮f(xié)議础淤,HTTP 協(xié)議一共有五大特點(diǎn)

支持客戶/服務(wù)器模式

簡單快速:客戶向服務(wù)器請(qǐng)求服務(wù)時(shí)崭放,只需傳送請(qǐng)求方法和路徑;請(qǐng)求方法常用的有GET管毙、 HEAD纵苛、POST疾牲。每種方法規(guī)定了客戶與服務(wù)器聯(lián)系的類型不同.由于HTTP協(xié)議簡 單稍算,使得HTTP服務(wù)器的程序規(guī)模小裹虫,因而通信速度很快

靈活:HTTP允許傳輸任意類型的數(shù)據(jù)對(duì)象篙顺。正在傳輸?shù)念愋陀蒀ontent-Type(Content- Type是HTTP包中用來表示內(nèi)容類型的標(biāo)識(shí))加以標(biāo)記

無連接:無連接的含義是限制每次連接只處理一個(gè)請(qǐng)求政基。服務(wù)器處理完客戶的請(qǐng)求示辈,并收到 客戶的應(yīng)答后,即斷開連接? HTTP1.1一次請(qǐng)求可以處理多個(gè)請(qǐng)求了

無狀態(tài):HTTP協(xié)議是無狀態(tài)協(xié)議掌桩。無狀態(tài)是指協(xié)議對(duì)于事務(wù)處理沒有記憶能力,缺少狀態(tài)意 味著如果后續(xù)處理需要前面的信息边锁,則它必須重傳,這樣可能導(dǎo)致每次連接傳送的 數(shù)據(jù)量增大,另一方面拘鞋,在服務(wù)器不需要先前信息時(shí)它的應(yīng)答就較快

HTTP1.0定義了三種請(qǐng)求方法: GET, POST 和 HEAD方法砚蓬。

HTTP1.1新增了五種請(qǐng)求方法: OPTIONS, PUT, DELETE, TRACE 和 CONNECT 方法。

GET 請(qǐng)求指定的頁面信息盆色,并返回實(shí)體主體

HEAD 類似于get請(qǐng)求灰蛙,只不過返回的響應(yīng)中沒有具體的內(nèi)容,用于獲取報(bào)頭

POST 向指定資源提交數(shù)據(jù)進(jìn)行處理請(qǐng)求,數(shù)據(jù)被包含在請(qǐng)求體中

PUT 從客戶端向服務(wù)器傳送的數(shù)據(jù)取代指定的文檔的內(nèi)容

DELETE 請(qǐng)求服務(wù)器刪除指定的頁面

CONNECT HTTP/1.1協(xié)議中預(yù)留給能夠?qū)⑦B接改為管道方式的代理服務(wù)器

OPTIONS 允許客戶端查看服務(wù)器的性能

TRACE 回顯服務(wù)器收到的請(qǐng)求隔躲,主要用于測(cè)試或診斷

TCP是什么

Tcp(傳輸控制協(xié)議)是一種面向連接的摩梧、可靠的、基于字節(jié)流的傳輸層通信協(xié)議;是專門為了在不可靠的互聯(lián)網(wǎng)絡(luò)上提供一個(gè)可靠的端到端字節(jié)流而設(shè)計(jì)的宣旱,面向字節(jié)流;會(huì)有三次握手來建立連接仅父,而且在數(shù)據(jù)傳遞時(shí),有確認(rèn). 窗口. 重傳. 擁塞控制機(jī)制浑吟,在數(shù)據(jù)傳完之后笙纤,還會(huì)斷開來連接用來節(jié)約系統(tǒng)資源.

UDP是什么

UDP(用戶數(shù)據(jù)報(bào)協(xié)議)是與TCP相對(duì)應(yīng)的協(xié)議;它是面向非連接的協(xié)議,它不與對(duì)方建立連接组力,而是直接就把數(shù)據(jù)包發(fā)送過去;UDP適用于一次只傳送少量數(shù)據(jù)省容、對(duì)可靠性要求不高的應(yīng)用環(huán)境可以使用UDP;

TCP和UDP區(qū)別

1. TCP面向連接(三次握手);UDP是無連接的,即發(fā)送數(shù)據(jù)之前不需要建立連接

2. TCP提供可靠的服務(wù)燎字。也就是說腥椒,通過TCP連接傳送的數(shù)據(jù),無差錯(cuò)候衍,不丟失笼蛛,不重復(fù),且按序到達(dá),UDP盡最大努力交付蛉鹿,即不保證可靠交付, Tcp通過校驗(yàn)和滨砍,重傳控制,序號(hào)標(biāo)識(shí)妖异,滑動(dòng)窗口惨好、確認(rèn)應(yīng)答實(shí)現(xiàn)可靠傳輸;

3. UDP具有較好的實(shí)時(shí)性,工作效率比TCP高随闺,適用于對(duì)高速傳輸和實(shí)時(shí)性有較高的通信或廣播通信

4. 每一條TCP連接只能是點(diǎn)到點(diǎn)的;UDP支持一對(duì)一,一對(duì)多蔓腐,多對(duì)一和多對(duì)多的交互通信

5. TCP對(duì)系統(tǒng)資源要求較多矩乐,UDP對(duì)系統(tǒng)資源要求較少;

什么是三次握手

所謂三次握手(Three-Way Handshake)即建立TCP連接,是指建立一個(gè)TCP連接時(shí),需要客戶端和服務(wù)端總共發(fā)送3個(gè)包以確認(rèn)連接的建立;

第一次握手:客戶端發(fā)送 syn 包(syn=j)到服務(wù)器散罕,并進(jìn)入 SYN_SEND 狀態(tài)分歇,等待服務(wù)器確認(rèn)

第二次握手:服務(wù)器收到 syn 包,必須確認(rèn)客戶的 SYN(ack=j+1)欧漱,同時(shí)自己也發(fā) 送一個(gè) SYN 包(syn=k)职抡,即 SYN+ACK 包,此時(shí)服務(wù)器進(jìn)入 SYN_RECV 狀態(tài)

第三次握手:客戶端收到服務(wù)器的 SYN+ACK 包误甚,向服務(wù)器發(fā)送確認(rèn)包 ACK(ack=k+1)缚甩, 此包發(fā)送完畢,客戶端和服務(wù)器進(jìn)入 ESTABLISHED 狀態(tài)窑邦,完成三次握手

握手過程中傳送的包里不包含數(shù)據(jù)擅威,三次握手完畢后,客戶端與服務(wù)器才正式開始 傳送數(shù)據(jù)

什么是四次揮手

由于TCP連接是全雙工的冈钦,因此每個(gè)方向都必須單獨(dú)進(jìn)行關(guān)閉;這原則是當(dāng)一方完成它的數(shù)據(jù)發(fā)送任務(wù)后就能發(fā)送一個(gè)FIN來終止這個(gè)方向的連接;收到一個(gè) FIN只意味著這一方向上沒有數(shù)據(jù)流動(dòng)郊丛,一個(gè)TCP連接在收到一個(gè)FIN后仍能發(fā)送數(shù)據(jù);首先進(jìn)行關(guān)閉的一方將執(zhí)行主動(dòng)關(guān)閉,而另一方執(zhí)行被動(dòng)關(guān)閉

TCP客戶端發(fā)送一個(gè)FIN瞧筛,用來關(guān)閉客戶到服務(wù)器的數(shù)據(jù)傳送

服務(wù)器收到這個(gè)FIN厉熟,它發(fā)回一個(gè)ACK,確認(rèn)序號(hào)為收到的序號(hào)加1较幌。和SYN一樣揍瑟,一個(gè)FIN將占用一個(gè)序號(hào)

服務(wù)器關(guān)閉客戶端的連接,發(fā)送一個(gè)FIN給客戶端

客戶端發(fā)回ACK報(bào)文確認(rèn)绅络,并將確認(rèn)序號(hào)設(shè)置為收到序號(hào)加1

什么是HTTTS

HTTPS? 超文本傳輸安全協(xié)議,是以安全為目標(biāo)的HTTP通道月培,簡單講是HTTP的安全版;即HTTP下加入SSL層,HTTPS的安全基礎(chǔ)是SSL,因此加密的詳細(xì)內(nèi)容就需要SSL?

加密過程是在傳輸層完成的(完成連接->驗(yàn)證證書->加密傳輸->斷開連接)

HTTPS連接過程簡述

客戶端向服務(wù)端發(fā)起 https 請(qǐng)求

服務(wù)器(需要申請(qǐng) ca 證書),返回證書(包含公鑰)給客戶端

客戶端使用根證書驗(yàn)證 服務(wù)器證書的有效性,進(jìn)行身份確認(rèn)

客戶端生成對(duì)稱密鑰,通過公鑰進(jìn)行加密,發(fā)送給服務(wù)器

服務(wù)器使用私鑰進(jìn)行 解密,獲取對(duì)稱密鑰

雙發(fā)使用對(duì)稱加密的數(shù)據(jù)進(jìn)行通信

什么是對(duì)稱加密

對(duì)稱加密是最快速恩急、最簡單的一種加密方式杉畜,加密(encryption)與解密(decryption)用的是同樣的密鑰(secret key)

常見的有AES,DES,3DES等

DES算法是一種用56位密鑰來加密分組長度為64位數(shù)據(jù)的對(duì)稱密鑰算法(實(shí)際上函數(shù)要求一個(gè)64位的密鑰作為輸入,但是第8衷恭、16此叠、24、32随珠、40灭袁、48、56窗看、64 等8位是校驗(yàn)位茸歧, 使得每個(gè)密鑰都有奇數(shù)個(gè) 1,所以參與加密過程的只有56位)

AES算法显沈,基本變換字節(jié)代換软瞎、行位移逢唤、列混合和輪密鑰加

AES是一個(gè)迭代分組密碼,分組大小為128位,而密鑰長度為128位涤浇、192位或256位鳖藕,相應(yīng)的迭代輪數(shù)N,為10輪只锭、12輪著恩、14輪

非對(duì)稱加密

非對(duì)稱加密為數(shù)據(jù)的加密與解密提供了一個(gè)非常安全的方法,它使用了一對(duì)密鑰蜻展,公鑰(public key)和私鑰(private key);私鑰只能由一方安全保管喉誊,不能外泄,而公鑰則可以發(fā)給任何請(qǐng)求它的人;非對(duì)稱加密使用這對(duì)密鑰中的一個(gè)進(jìn)行加密铺呵,而解密則需要另一個(gè)密鑰;

常見的: RSA算法

http 與https區(qū)別

https協(xié)議需要到ca申請(qǐng)證書裹驰,一般免費(fèi)證書很少,需要交費(fèi)

http是超文本傳輸協(xié)議片挂,信息是明文傳輸幻林,https 則是具有安全性的ssl加密傳輸協(xié)議

http和https使用的是完全不同的連接方式,用的端口也不一樣音念,前者是80沪饺,后者是443

http的連接很簡單,是無狀態(tài)的闷愤;HTTPS協(xié)議是由SSL+HTTP協(xié)議構(gòu)建的可進(jìn)行加密傳輸整葡、身份認(rèn)證的網(wǎng)絡(luò)協(xié)議,比http協(xié)議安全

說一下Session 和 Cookie 的概念

Session 是服務(wù)器用來認(rèn)證,追蹤用戶的數(shù)據(jù)結(jié)構(gòu),通過判斷客戶端傳來的信息確定用戶,確定用戶唯一標(biāo)志是客戶端傳來的 SessionId

Cookie 是客戶端用來保存用戶信息的機(jī)制, 初次會(huì)話時(shí), http 協(xié)議會(huì)在 Cookie 里記錄一個(gè)SessionID,之后每次會(huì)話時(shí)把 SessionID發(fā)給服務(wù)器

什么Socket

網(wǎng)絡(luò)上的兩個(gè)程序通過一個(gè)雙向的通信連接實(shí)現(xiàn)數(shù)據(jù)的交換,這個(gè)鏈接的一端稱為一個(gè)socket;

socket本質(zhì)是編程接口(API)讥脐,對(duì)TCP/IP的封裝遭居,TCP/IP也要提供可供程序員做網(wǎng)絡(luò)開發(fā)所用的接口,這就是Socket編程接口;HTTP是轎車旬渠,提供了封裝或者顯示數(shù)據(jù)的具體形式俱萍;Socket是發(fā)動(dòng)機(jī),提供了網(wǎng)絡(luò)通信的能力;

什么是DNS

域名系統(tǒng)(DomainNameSystem告丢,縮寫:DNS)是[互聯(lián)網(wǎng)]的一項(xiàng)服務(wù)枪蘑。它作為將域名和IP地址相互映射的一個(gè)分布式數(shù)據(jù)庫,能夠使人更方便地訪問[互聯(lián)網(wǎng)]

DNS劫持問題

DNS劫持又稱(域名劫持), 是指在劫持的網(wǎng)絡(luò)范圍內(nèi)攔截域名解析的請(qǐng)求岖免,分析請(qǐng)求的域名岳颇,把審查范圍以外的請(qǐng)求放行,否則返回假的IP地址或者什么都不做使請(qǐng)求失去響應(yīng),其效果就是對(duì)特定的網(wǎng)絡(luò)不能訪問或訪問的是假網(wǎng)址

解決辦法: 使用HTTPDNS

項(xiàng)目中網(wǎng)絡(luò)層如何做安全處理

盡量使用https

不要傳輸明文密碼

Post并不比Get安全

不要使用301跳轉(zhuǎn)

http請(qǐng)求都帶上MAC

http請(qǐng)求使用臨時(shí)密鑰

斷點(diǎn)續(xù)傳如何實(shí)現(xiàn)

通過HTTP颅湘,可以非常方便的實(shí)現(xiàn)斷點(diǎn)續(xù)傳

斷點(diǎn)續(xù)傳主要依賴于HTTP頭部定義的Range话侧,應(yīng)用可以通過HTTP請(qǐng)求曾經(jīng)獲取失敗的資源的某一個(gè)返回或者部分來恢復(fù)下載該資源;當(dāng)然并不是所有風(fēng)服務(wù)器都支持Range,所以不支持Range的不在我們考慮之內(nèi),Range是以字節(jié)計(jì)算的闯参,請(qǐng)求的時(shí)候不比給我結(jié)尾字節(jié)數(shù)瞻鹏,因?yàn)檎?qǐng)求方并不一定知道資源的大小

通過這個(gè)關(guān)鍵字可以告訴服務(wù)器返回哪些數(shù)據(jù)給我

什么是WebSocket术羔,解決了什么問題

WebSocket是應(yīng)用層第七層上的一個(gè)應(yīng)用層協(xié)議,它必須依賴 HTTP 協(xié)議進(jìn)行一次握手 乙漓,握手成功后,數(shù)據(jù)就直接從 TCP 通道傳輸释移,與 HTTP 無關(guān)了

Websocket的數(shù)據(jù)傳輸是frame形式傳輸?shù)陌扰热鐣?huì)將一條消息分為幾個(gè)frame,按照先后順序傳輸出去

WebSocket 的實(shí)現(xiàn)分為握手玩讳,數(shù)據(jù)發(fā)送/讀取涩蜘,關(guān)閉連接

什么是心跳

心跳就是用來檢測(cè)TCP連接的雙方是否可用

客戶端發(fā)起心跳Ping(一般都是客戶端),假如設(shè)置在10秒后如果沒有收到回調(diào)熏纯,那么說明服務(wù)器或者客戶端某一方出現(xiàn)問題同诫,這時(shí)候我們需要主動(dòng)斷開連接

公鑰加密計(jì)算量太大,如何減少耗用的時(shí)間

解決方法:每一次對(duì)話(session)樟澜,客戶端和服務(wù)器端都生成一個(gè)"對(duì)話密鑰"(session key)误窖,用它來加密信息;由于"對(duì)話密鑰"是對(duì)稱加密,所以運(yùn)算速度非持确。快霹俺,而服務(wù)器公鑰(非對(duì)稱加密)只用于加密"對(duì)話密鑰"本身,這樣就減少了加密運(yùn)算的消耗時(shí)間

AF中常駐線程的實(shí)現(xiàn)

使用單例創(chuàng)建線程 添加到runloop中毒费,且加了一個(gè)NSMachPort(線程間的通信)丙唧,來防止這個(gè)新建的線程由于沒有活動(dòng)直接退出

AF3.x為什么不再需要常駐線程

NSURLConnection的一大痛點(diǎn)就是:發(fā)起請(qǐng)求后,這條線程并不能隨風(fēng)而去觅玻,而需要一直處于等待回調(diào)的狀態(tài)

NSURLSession發(fā)起的請(qǐng)求想际,不再需要在當(dāng)前線程進(jìn)行代理方法的回調(diào)!可以指定回調(diào)的delegateQueue溪厘,這樣我們就不用為了等待代理回調(diào)方法而苦苦焙荆活線程了

同時(shí)還要注意一下,指定的用于接收回調(diào)的Queue的maxConcurrentOperationCount設(shè)為了1桩匪,這里目的是想要讓并發(fā)的請(qǐng)求串行的進(jìn)行回調(diào)

為什么AF3.0中需要設(shè)置self.operationQueue.maxConcurrentOperationCount = 1而AF2.0卻不需要打瘪?

AF3.0的operationQueue是用來接收NSURLSessionDelegate回調(diào)的,鑒于一些多線程數(shù)據(jù)訪問的安全性考慮,設(shè)置了maxConcurrentOperationCount = 1來達(dá)到串行回調(diào)的效果

AF2.0的operationQueue是用來添加operation并進(jìn)行并發(fā)請(qǐng)求的傻昙,所以不要設(shè)置為1

XMPP是什么

XMPP 是一種基于XML的協(xié)議闺骚,XMPP是一個(gè)分散型通信網(wǎng)絡(luò)

XMPP是一種基于標(biāo)準(zhǔn)通用標(biāo)記語言的子集XML的協(xié)議,它繼承了在XML環(huán)境中靈活的發(fā)展性妆档,XMPP有超強(qiáng)的擴(kuò)展性;XMPP中定義了三個(gè)角色僻爽,客戶端,服務(wù)端贾惦,網(wǎng)關(guān)胸梆。通信能夠在這個(gè)三者的任意兩個(gè)之間雙向發(fā)生敦捧,而他們的傳輸是XML流;

MPP工作原理:所有從一個(gè)客戶端到另一個(gè)客戶端的消息和數(shù)據(jù)都要通過服務(wù)端

XMPP允許建立并行的TCP套接字鏈接對(duì)所有連接上的客戶端和服務(wù)器端。持久的套接字的連接使得XMPP能夠更有效的支持高級(jí)的具有存在能力的應(yīng)用在帶寬和處理資源的使用中

小結(jié)

而XMPP的核心部分就是一個(gè)在網(wǎng)絡(luò)上分片斷發(fā)送XML的流協(xié)議.這個(gè)流協(xié)議是XMPP的即時(shí)通訊指令的傳遞基礎(chǔ)碰镜,也是一個(gè)非常重要的可以被進(jìn)一步利用的網(wǎng)絡(luò)基礎(chǔ)協(xié)議兢卵。所以可以說,XMPP用TCP傳的是XML流

MAC地址和ip地址的區(qū)別

MAC地址就是在媒體接入層上使用的地址绪颖,也叫物理地址秽荤、硬件地址或鏈路地址,由網(wǎng)絡(luò)設(shè)備制造商生產(chǎn)時(shí)寫在硬件內(nèi)部? 前三個(gè)設(shè)備商編號(hào)? 后三位設(shè)備ID

IP即指使用TCP/IP協(xié)議指定給主機(jī)的32位地址 通過DHCP協(xié)議動(dòng)態(tài)獲取IP地址

IP地址相當(dāng)于你現(xiàn)在所處的地址柠横,會(huì)隨著你的移動(dòng)發(fā)生改變窃款,而mac地址相當(dāng)于你的身份證號(hào)這些個(gè)人信息,是獨(dú)一無二的牍氛,不會(huì)改變的

Ping是什么協(xié)議

ping也屬于一個(gè)通信協(xié)議晨继,是TCP/IP協(xié)議的一部分;利用“ping”命令可以檢查網(wǎng)絡(luò)是否連通;

PING (Packet Internet Groper),因特網(wǎng)包探索器搬俊,用于測(cè)試網(wǎng)絡(luò)連接量的程序

Ping發(fā)送一個(gè)ICMP(Internet Control Messages Protocol)即因特網(wǎng)信報(bào)控制協(xié)議

它所利用的原理是這樣的:利用網(wǎng)絡(luò)上機(jī)器IP地址的唯一性紊扬,給目標(biāo)IP地址發(fā)送一個(gè)數(shù)據(jù)包,再要求對(duì)方返回一個(gè)同樣大小的數(shù)據(jù)包來確定兩臺(tái)網(wǎng)絡(luò)機(jī)器是否連接相通悠抹,時(shí)延是多少

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末珠月,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子楔敌,更是在濱河造成了極大的恐慌啤挎,老刑警劉巖,帶你破解...
    沈念sama閱讀 207,113評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件卵凑,死亡現(xiàn)場(chǎng)離奇詭異庆聘,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)勺卢,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,644評(píng)論 2 381
  • 文/潘曉璐 我一進(jìn)店門伙判,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人黑忱,你說我怎么就攤上這事宴抚。” “怎么了甫煞?”我有些...
    開封第一講書人閱讀 153,340評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵菇曲,是天一觀的道長。 經(jīng)常有香客問我抚吠,道長常潮,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,449評(píng)論 1 279
  • 正文 為了忘掉前任楷力,我火速辦了婚禮喊式,結(jié)果婚禮上孵户,老公的妹妹穿的比我還像新娘。我一直安慰自己岔留,他們只是感情好夏哭,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,445評(píng)論 5 374
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著献联,像睡著了一般方庭。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上酱固,一...
    開封第一講書人閱讀 49,166評(píng)論 1 284
  • 那天,我揣著相機(jī)與錄音头朱,去河邊找鬼运悲。 笑死,一個(gè)胖子當(dāng)著我的面吹牛项钮,可吹牛的內(nèi)容都是我干的班眯。 我是一名探鬼主播,決...
    沈念sama閱讀 38,442評(píng)論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼烁巫,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼署隘!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起亚隙,我...
    開封第一講書人閱讀 37,105評(píng)論 0 261
  • 序言:老撾萬榮一對(duì)情侶失蹤磁餐,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后阿弃,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體诊霹,經(jīng)...
    沈念sama閱讀 43,601評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,066評(píng)論 2 325
  • 正文 我和宋清朗相戀三年渣淳,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了脾还。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,161評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡入愧,死狀恐怖鄙漏,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情棺蛛,我是刑警寧澤怔蚌,帶...
    沈念sama閱讀 33,792評(píng)論 4 323
  • 正文 年R本政府宣布,位于F島的核電站鞠值,受9級(jí)特大地震影響媚创,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜彤恶,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,351評(píng)論 3 307
  • 文/蒙蒙 一钞钙、第九天 我趴在偏房一處隱蔽的房頂上張望鳄橘。 院中可真熱鬧,春花似錦芒炼、人聲如沸瘫怜。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,352評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽鲸湃。三九已至,卻和暖如春子寓,著一層夾襖步出監(jiān)牢的瞬間暗挑,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,584評(píng)論 1 261
  • 我被黑心中介騙來泰國打工斜友, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留炸裆,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 45,618評(píng)論 2 355
  • 正文 我出身青樓鲜屏,卻偏偏與公主長得像烹看,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子洛史,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,916評(píng)論 2 344

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