亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費(fèi)注冊(cè) 查看新帖 |

Chinaunix

  平臺(tái) 論壇 博客 文庫(kù)
12345下一頁(yè)
最近訪問(wèn)板塊 發(fā)新帖
查看: 56032 | 回復(fù): 48
打印 上一主題 下一主題

[其他] 您了解HTTP么?工作中奇葩HTTP問(wèn)題經(jīng)驗(yàn)大征集。ǐ@獎(jiǎng)名單已公布-2014-7-9) [復(fù)制鏈接]

論壇徽章:
49
15-16賽季CBA聯(lián)賽之福建
日期:2016-06-22 16:22:002015年亞洲杯之中國(guó)
日期:2015-01-23 16:25:12丑牛
日期:2015-01-20 09:39:23未羊
日期:2015-01-14 23:55:57巳蛇
日期:2015-01-06 18:21:36雙魚(yú)座
日期:2015-01-02 22:04:33午馬
日期:2014-11-25 09:58:35辰龍
日期:2014-11-18 10:40:07寅虎
日期:2014-11-13 22:47:15申猴
日期:2014-10-22 15:29:50摩羯座
日期:2014-08-27 10:49:43辰龍
日期:2014-08-21 10:47:58
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報(bào)告]
發(fā)表于 2014-06-05 15:58 |只看該作者 |倒序?yàn)g覽
獲獎(jiǎng)名單已公布,詳情請(qǐng)看:http://72891.cn/thread-4145264-1-1.html

活動(dòng)背景:
你了解 HTTP 嗎?
你認(rèn)為你真的很了解 HTTP 嗎?
你知道 HTTP/1.0 和 HTTP/1.1 的區(qū)別嗎?
你知道各種 HTTP 返回碼的實(shí)際意義嗎?
你知道各種 Request Header 和 Response Header 里多種字段的含義嗎?
你又了解 SPDY 嗎?
《圖解 HTTP》這本書(shū)會(huì)把上述問(wèn)題剖析得淋漓盡致,尤其對(duì)于互聯(lián)網(wǎng)運(yùn)維的小伙伴們,真的是一本值得學(xué)習(xí)和參考的佳作!

本期話(huà)題:
說(shuō)說(shuō)你在學(xué)習(xí)、工作中遇到的 HTTP 的那些奇葩事(闡述清楚問(wèn)題,并說(shuō)明是如何解決的)

活動(dòng)時(shí)間:
2014年6月5日-6月25日

本期嘉賓:
ChinaUnix資深版主:platinum

活動(dòng)獎(jiǎng)品:
從中抽取5名用戶(hù),獲得《圖解HTTP》一本,更多圖靈新書(shū),點(diǎn)擊這里

作者: (日)上野 宣   
譯者: 于均良
叢書(shū)名: 圖靈程序設(shè)計(jì)叢書(shū)
出版社:人民郵電出版社
ISBN:9787115351531
上架時(shí)間:2014-4-10
出版日期:2014 年5月
開(kāi)本:32開(kāi)
頁(yè)碼:250

活動(dòng)要求:
1、 要言之有物,不能低于20個(gè)字。
2、 本次話(huà)題主要關(guān)注http及運(yùn)維相關(guān)的技術(shù)討論,其他問(wèn)題可能不做重點(diǎn)

論壇徽章:
0
2 [報(bào)告]
發(fā)表于 2014-06-05 16:02 |只看該作者
沙發(fā)我的。HHTP真的疊成出一本書(shū)。

論壇徽章:
93
2015年辭舊歲徽章
日期:2019-10-10 10:51:15CU大;照
日期:2014-02-21 14:21:56CU十二周年紀(jì)念徽章
日期:2020-10-15 16:55:55CU大;照
日期:2014-02-21 14:22:07羊年新春福章
日期:2019-10-10 10:51:39CU大;照
日期:2019-10-10 10:55:38季節(jié)之章:春
日期:2020-10-15 16:57:40ChinaUnix元老
日期:2019-10-10 10:54:42季節(jié)之章:冬
日期:2019-10-10 10:57:17CU大;照
日期:2014-02-21 14:22:52CU大牛徽章
日期:2014-03-13 10:40:30CU大;照
日期:2014-02-21 14:23:15
3 [報(bào)告]
發(fā)表于 2014-06-05 17:23 |只看該作者
這方面接觸不多,返回碼之前有看到一個(gè)挺有趣的科普故事,不過(guò)也沒(méi)什么印象了。

論壇徽章:
0
4 [報(bào)告]
發(fā)表于 2014-06-05 17:29 |只看該作者
還真不了解。

論壇徽章:
0
5 [報(bào)告]
發(fā)表于 2014-06-05 17:31 |只看該作者
本帖最后由 jbqncn 于 2014-06-13 10:05 編輯

你了解 HTTP 嗎?
有點(diǎn)了解
你認(rèn)為你真的很了解 HTTP 嗎?
不太深入
你知道 HTTP/1.0 和 HTTP/1.1 的區(qū)別嗎?
主要區(qū)別有三個(gè)這個(gè)是當(dāng)年畢業(yè)設(shè)計(jì)做簡(jiǎn)單HTTP服務(wù)器學(xué)到的。
一個(gè)是支持虛擬主機(jī)(主要是依靠Host頭)。
一個(gè)是支持keepalive就是在一個(gè)TCP連接里可以發(fā)多個(gè)HTTP請(qǐng)求,這樣就要求每個(gè)HTTP請(qǐng)求都要有content-length來(lái)定界。
還有一個(gè)記不太清了。。
你知道各種 HTTP 返回碼的實(shí)際意義嗎?
1xx 代表消息類(lèi)型
2xx 代表成功
3xx 代表重定向
4xx 代表客戶(hù)端發(fā)來(lái)的請(qǐng)求有誤
5xx 代表服務(wù)器內(nèi)部錯(cuò)誤
你知道各種 Request Header 和 Response Header 里多種字段的含義嗎?
有些HTTP頭即可以出現(xiàn)在Request里,也可以出現(xiàn)在Response里,比如content-length
有些HTTP則只出現(xiàn)在一類(lèi)消息中比如 server ?
HTTP1.1里頭太多了,等要用到了再研究吧。
你又了解 SPDY 嗎?
SPDY是HTTP2.0是哪幾個(gè)字母的縮寫(xiě)或者主要有什么改進(jìn)都不太清楚,主要是現(xiàn)在也沒(méi)大規(guī)模應(yīng)用,所以也沒(méi)了解太深,不過(guò)貌似很多HTTP服務(wù)器有支持。
以上回答全部錯(cuò)誤,就連SPDY不是縮寫(xiě)也被明顯指出。http://zh.wikipedia.org/wiki/SPDY


評(píng)分

參與人數(shù) 1可用積分 +2 收起 理由
platinum + 2 贊一個(gè)!

查看全部評(píng)分

論壇徽章:
17
戌狗
日期:2013-09-02 23:43:02技術(shù)圖書(shū)徽章
日期:2014-04-29 14:16:02技術(shù)圖書(shū)徽章
日期:2014-04-24 15:51:26未羊
日期:2014-04-06 22:10:30丑牛
日期:2014-04-06 21:23:29辰龍
日期:2014-04-06 21:20:22處女座
日期:2014-04-06 21:16:18技術(shù)圖書(shū)徽章
日期:2014-04-02 15:10:51金牛座
日期:2014-03-10 22:26:18巨蟹座
日期:2014-02-17 17:12:12技術(shù)圖書(shū)徽章
日期:2014-01-24 10:38:43摩羯座
日期:2013-11-29 18:00:18
6 [報(bào)告]
發(fā)表于 2014-06-05 17:52 |只看該作者
了解點(diǎn),占位支持好話(huà)題。

論壇徽章:
5
亥豬
日期:2013-10-15 13:41:04CU十二周年紀(jì)念徽章
日期:2013-10-24 15:41:34申猴
日期:2013-10-28 10:55:45辰龍
日期:2013-10-31 13:29:29丑牛
日期:2014-02-14 11:25:54
7 [報(bào)告]
發(fā)表于 2014-06-05 18:14 |只看該作者
遇到過(guò) HTTP 報(bào)文被改寫(xiě)了
原來(lái)的 Content-Length 被改成了 0

解決麼? 無(wú)解

論壇徽章:
0
8 [報(bào)告]
發(fā)表于 2014-06-05 19:41 |只看該作者
提示: 作者被禁止或刪除 內(nèi)容自動(dòng)屏蔽

論壇徽章:
2
水瓶座
日期:2014-06-12 08:22:39IT運(yùn)維版塊每日發(fā)帖之星
日期:2015-08-05 06:20:00
9 [報(bào)告]
發(fā)表于 2014-06-05 20:53 |只看該作者
回復(fù) 1# send_linux


    前段時(shí)間想通過(guò)HTTP來(lái)上傳文件,發(fā)生了一件奇葩事,,哈哈。。不多說(shuō)直接上代碼:
void COSBHTTPClient::UploadFile( TOSBDownloadParam& aParam, TDesC8& aContentType )

//aContentType  = “multipart/form-data; boundary=AaB03x”

{

        iClient->CancelTransaction();

        

        RFile rFile;

        RFs fs;

        if( KErrNone != fs.Connect() )

        {

                return;

        }



        //Open file where the stream text is

        TInt error = rFile.Open( fs, iDownloadParam->iFileName, EFileShareAny );//EFileRead );

        CleanupClosePushL( rFile );

        TInt size = -1;

        User::LeaveIfError( rFile.Size( size ) );        

        HBufC8* aXmlBuffer = HBufC8::NewLC( size );

        TPtr8 bufPtr( aXmlBuffer->Des() );

        error = rFile.Read( bufPtr );

        CleanupStack:op( aXmlBuffer ); // aXmlBuffer

        CleanupStack:opAndDestroy( &rFile ); // rFile

        fs.Close();

        _LIT8(KDataStart,"--AaB03x";

        _LIT8(KCrlf,"\r\n";

        _LIT8(KContent,"Content-Disposition: form-data; name='userfile'; filename='";

        _LIT8(KFileCompletion,"'";

         

        _LIT8(KContent2,"Content-Type: text/plain";

        _LIT8(KContent3,"Content-Transfer-Encoding: binary";

        _LIT8(KDataEnd,"--AaB03x--";

         

        HBufC8* iPostData = HBufC8::NewL( 650+ size );

         

        TPtr8 iPostDataPtr = iPostData->Des();

        iPostDataPtr.Zero();

         

        iPostDataPtr.Append(KCrlf);

        iPostDataPtr.Append(KDataStart);

        iPostDataPtr.Append(KCrlf);

        iPostDataPtr.Append(KContent);

//        iPostDataPtr.Append(aFname);

        iPostDataPtr.Append(KFileCompletion);

        iPostDataPtr.Append(KCrlf);

        iPostDataPtr.Append(KContent2);

        iPostDataPtr.Append(KCrlf);

        iPostDataPtr.Append(KContent3);

        iPostDataPtr.Append(KCrlf);

        iPostDataPtr.Append(KCrlf);

        iPostDataPtr.Append(bufPtr); //the file in binary

        iPostDataPtr.Append(KCrlf);

        iPostDataPtr.Append(KDataEnd);

        iPostDataPtr.Append(KCrlf);

        iClient->IssueHTTPPostL(URL, aContentType, iPostDataPtr);

        iObserver.ClientEvent( MOSBHTTPClientObserver::EEventConnecting );

}
復(fù)制代碼void CClientEngine::IssueHTTPPostL( const TDesC8& aUri,

                const TDesC8& aContentType, const TDesC8& aBody )

{

        SetupConnectionL();



        // Parse string to URI

        TUriParser8 uri;

        TInt ret = uri.Parse( aUri );

        // Copy data to be posted into member variable; iPostData is used later in

        // methods inherited from MHTTPDataSupplier.

        delete iPostData;

        iPostData = aBody.AllocL();

        // Get request method string for HTTP POST

        RStringF method = iSession.StringPool().StringF(HTTP::EPOST, RHTTPSession::GetTable());



        // Open transaction with previous method and parsed uri. This class will

        // receive transaction events in MHFRunL and MHFRunError.

        iTransaction = iSession.OpenTransactionL( uri, *this, method );

        // Set headers for request; user agent, accepted content type and body's

        // content type.

        RHTTPHeaders hdr = iTransaction.Request().GetHeaderCollection();

        SetHeaderL( hdr, HTTP::EUserAgent, KUserAgent );

        SetHeaderL( hdr, HTTP::EAccept, KAccept );

        SetHeaderL( hdr, HTTP::EContentType, aContentType );

        // Set this class as an data supplier. Inherited MHTTPDataSupplier methods

        // are called when framework needs to send body data.

        MHTTPDataSupplier* dataSupplier = this;

        iTransaction.Request().SetBody( *dataSupplier );

        // Submit the transaction. After this the framework will give transaction

        // events via MHFRunL and MHFRunError.

        iTransaction.SubmitL();

}
復(fù)制代碼void CClientEngine::MHFRunL( RHTTPTransaction aTransaction,

                const THTTPEvent& aEvent )

{



}
復(fù)制代碼現(xiàn)在與服務(wù)器的連接可以成功,但是body總是傳不上去,從log看MHFRunL的aEvent,走了下面3種狀態(tài)
THTTPEvent::EGotResponseHeaders
THTTPEvent::EResponseComplete
THTTPEvent::ESucceeded
可是THTTPEvent::EGotResponseBodyData始終沒(méi)有走到,自己總是以為上傳失敗,苦苦糾結(jié)了一個(gè)下午,,,最后才發(fā)現(xiàn)我是POST,不走THTTPEvent::EGotResponseBodyData,除非在POST給服務(wù)器的時(shí)候服務(wù)器還有返回信息才會(huì)走。。。。

論壇徽章:
40
水瓶座
日期:2013-08-15 11:26:422015年辭舊歲徽章
日期:2015-03-03 16:54:152015年亞洲杯之烏茲別克斯坦
日期:2015-03-27 14:01:172015年亞洲杯之約旦
日期:2015-03-31 15:06:442015亞冠之首爾
日期:2015-06-16 23:24:37IT運(yùn)維版塊每日發(fā)帖之星
日期:2015-07-01 22:20:002015亞冠之德黑蘭石油
日期:2015-07-08 09:32:07IT運(yùn)維版塊每日發(fā)帖之星
日期:2015-08-29 06:20:00IT運(yùn)維版塊每日發(fā)帖之星
日期:2015-08-29 06:20:00IT運(yùn)維版塊每日發(fā)帖之星
日期:2015-10-10 06:20:00IT運(yùn)維版塊每日發(fā)帖之星
日期:2015-10-11 06:20:00IT運(yùn)維版塊每日發(fā)帖之星
日期:2015-11-10 06:20:00
10 [報(bào)告]
發(fā)表于 2014-06-06 00:20 |只看該作者
本帖最后由 forgaoqiang 于 2014-06-23 14:41 編輯

HTTP 還是比較了解滴 好不容易看完了《HTTP權(quán)威指南》 ~~ 哈哈 過(guò)兩天從現(xiàn)場(chǎng)回去了再來(lái)討論~

1、你了解 HTTP 嗎?
對(duì)于HTTP還是比較了解的,工作中需要配置Apache和Nginx服務(wù)器,很多時(shí)候就是和HTTP在打交道,同時(shí)需要寫(xiě)一些Web的程序,對(duì)HTTP的各種狀態(tài)操作會(huì)大大影響網(wǎng)絡(luò)性能的,F(xiàn)在主要做無(wú)線這一塊,AC控制器直接使用HTTPS(和HTTP相同哦)進(jìn)行通訊,很多Heartbeat通訊的時(shí)候直接使用Header方式即可,沒(méi)有必要使用開(kāi)銷(xiāo)很大的GET/POST方式。

2、你認(rèn)為你真的很了解 HTTP 嗎?
⊙﹏⊙b汗 讓這個(gè)問(wèn)題一問(wèn),突然沒(méi)有自信了。我真的還是比較了解HTTP的,至少把《HTTP The Definitive Guide》看了個(gè)差不多,大部分內(nèi)容都理解了,應(yīng)該是很了解了。雖然實(shí)際生產(chǎn)應(yīng)用中大部分的HTTP協(xié)議功能并沒(méi)有使用。

3、你知道 HTTP/1.0 和 HTTP/1.1 的區(qū)別嗎?
這個(gè)比較實(shí)用的兩個(gè)區(qū)別還是曉得的,如下所述:
①其實(shí)最大的最有意義的區(qū)別就是 長(zhǎng)連接的改進(jìn)(Keep-alive),能夠在一個(gè)HTTP連接里面?zhèn)鬏敹鄠(gè)文件,而不像是HTTP1.0里面每次請(qǐng)求都得來(lái)一遍:TCP三次握手+HTTP過(guò)程,大大的提高性能。
②“偏移”字節(jié)功能,能夠支持不從0開(kāi)始傳輸,因此能夠支持所謂的斷點(diǎn)續(xù)傳,對(duì)于移動(dòng)網(wǎng)絡(luò)還是比較實(shí)用的功能,因?yàn)橐苿?dòng)網(wǎng)絡(luò)經(jīng)常會(huì)出現(xiàn)不穩(wěn)定的問(wèn)題,只要服務(wù)器端記錄了已經(jīng)發(fā)送的字節(jié)數(shù)就能實(shí)現(xiàn)斷點(diǎn)續(xù)傳,而不用重新發(fā)送。
其實(shí)具體的區(qū)別只要查看 官方的定義文檔RFC即可知道,
  1. RFC 1945 - Hypertext Transfer Protocol -- HTTP/1.0
  2. http://www.w3.org/Protocols/rfc1945/rfc1945
  3. RFC 2616 - Hypertext Transfer Protocol -- HTTP/1.1
  4. http://www.w3.org/Protocols/rfc2616/rfc2616
復(fù)制代碼
4、你知道各種 HTTP 返回碼的實(shí)際意義嗎?
是的,大部分的返回碼還是知道的,因?yàn)槭褂肁jax技術(shù)就有必要知道返回碼的含義,以便于根據(jù)對(duì)應(yīng)的狀態(tài)碼進(jìn)行相應(yīng)地回調(diào)操作。

我只說(shuō)下ajax編程中的5個(gè)狀態(tài)吧,其實(shí)和HTTP的狀態(tài)位是對(duì)應(yīng)的,其他的返回碼直接查詢(xún)下列表即可。
  1. 0 - (未初始化)還沒(méi)有調(diào)用send()方法
  2. 1 - (載入)已調(diào)用send()方法,正在發(fā)送請(qǐng)求
  3. 2 - (載入完成)send()方法執(zhí)行完成
  4. 3 - (交互)正在解析響應(yīng)內(nèi)容
  5. 4 - (完成)響應(yīng)內(nèi)容解析完成,可以在客戶(hù)端調(diào)用
復(fù)制代碼
5、你知道各種 Request Header 和 Response Header 里多種字段的含義嗎?
是的,對(duì)于一部分常用的還是很清楚的,Request請(qǐng)求的內(nèi)容不多,主要是帶上一些客戶(hù)端信息以及請(qǐng)求的主機(jī)、方法、能接受的編碼等等信息。
Response Header中包含的內(nèi)容比較多,包括Content-length(用來(lái)定界)、返回的文件類(lèi)型,對(duì)于網(wǎng)絡(luò)性能比較相關(guān)的就是緩存相關(guān)的字段,比如過(guò)期時(shí)間、是否允許緩存等。

6、你有了解 SPDY 嗎?
這個(gè)倒是聽(tīng)說(shuō)過(guò),應(yīng)該是Chrome的專(zhuān)有技術(shù),通過(guò)對(duì)HTTP的進(jìn)行壓縮(增加有效負(fù)載,和TCP/UDP那種類(lèi)似),優(yōu)化后的HTTP能夠減少協(xié)議流量自身開(kāi)銷(xiāo),把更多的空間留給有效的負(fù)載(高層數(shù)據(jù)),SPDY不是一堆單詞的縮寫(xiě),只是Speedy的縮寫(xiě)而已。

現(xiàn)在發(fā)現(xiàn)HTTPS長(zhǎng)連接能夠當(dāng)做socket來(lái)使用,C/S結(jié)構(gòu)采用高層協(xié)議HTTP來(lái)作為通訊協(xié)議,開(kāi)發(fā)效率高、難度低,即使Ubnt這樣的廠家的控制器都有基于HTTPS進(jìn)行傳輸?shù),果然HTTP還是非常方便的,奇葩的事情有一個(gè):
當(dāng)時(shí)給建設(shè)銀行的熱點(diǎn)系統(tǒng)做聯(lián)通短信對(duì)接,不知道為什么短信通道那邊總是返回 200(代表成功)的狀態(tài)碼,但是content-length總是0,最后才發(fā)現(xiàn)是Nginx設(shè)置了時(shí)間內(nèi)限制,每分鐘只允許20次請(qǐng)求,然后就進(jìn)行虛假響應(yīng),差點(diǎn)被坑死,使用自己的短信網(wǎng)關(guān)近萬(wàn)條才發(fā)現(xiàn)這個(gè)問(wèn)題。

評(píng)分

參與人數(shù) 1可用積分 +5 收起 理由
platinum + 5 贊一個(gè)!

查看全部評(píng)分

您需要登錄后才可以回帖 登錄 | 注冊(cè)

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號(hào)-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號(hào):11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報(bào)專(zhuān)區(qū)
中國(guó)互聯(lián)網(wǎng)協(xié)會(huì)會(huì)員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過(guò)ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請(qǐng)注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP