亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? htreq.h

?? www工具包. 這是W3C官方支持的www支撐庫. 其中提供通用目的的客戶端的WebAPI: complete HTTP/1.1 (with caching, pipelining, PUT, POS
?? H
?? 第 1 頁 / 共 3 頁
字號:
/*    					W3C Sample Code Library libwww Request Class!  The Request Class!*//***	(c) COPYRIGHT MIT 1995.**	Please first read the full copyright statement in the file COPYRIGH.*//*Libwww is based on a request/response paradigm and the Request class defines"an operation to be performed on a URL". The request object is themain entry point for an application to issue a request to the Library - alloperations on a URL must use a Request object. The request objectis application independent in that both servers and clients use the sameRequest class. Examples of requests passed to the Library are a clientapplication issuing a GET request on a HTTP URL, or a server issuinga load on a local file URL. The only difference is that the client gets theinput from a user whereas the server gets the input via the network.A request object is created with a default set of parameters which are applicablefor many URL requests but the class defines a huge set of methods that anbe used to customize a request for a particular purpose. Example of thingsthat you can define is natural language, media types, what RFC 822 headersto use, whether the request should be refreshed from cache etc. Scroll downand see the set of parameters you can tune.A request object is registered in the library by issuing an operation ona URL - for example PUT, POST, or DELETE. You can findmany higher level "request issuing functions" in theAccess module - the methods defined by the Requestclass itself are very low level but can of course be used directly if needed.Whereas the lifetime of the URL (in form of an anchor) often is very long(for example as long as the application is running), the lifetime of a requestis limited to the time it takes to service the request. The core does notautomatically delete any request object created by the application - it isfor the application to do. In many cases a request object can be deletedwhen any of the termination callback functionsare called but the application may keep request objects around longer thanthatThe Library can accept an unlimited number of simultaneous requests passedby the application. One of the main functions of the Library core is to handleany number of ongoing requests in an intelligent manner by limiting the numberof active request to the fit the available resources as defined by theapplication. This is described in more detail in the HTNetmodule.This module is implemented by HTReqMan.c, and itis a part of the  W3C Sample CodeLibrary.*/#ifndef HTREQ_H#define HTREQ_Htypedef long HTRequestID;typedef struct _HTRequest HTRequest;#include "HTEvent.h"#include "HTList.h"#include "HTAssoc.h"#include "HTFormat.h"#include "HTStream.h"#include "HTError.h"#include "HTNet.h"#include "HTUser.h"#include "HTResponse.h"/*.  Creation and Deletion Methods.The request object is intended to live as long as the request is still active,but can be deleted as soon as it has terminated, for example in one of therequest termination callback functions as described in theNet Manager. Only the anchor object stays aroundafter the request itself is terminated.(  Create new Object)Creates a new request object with a default set of options -- in most casesit will need some information added which can be done using the methods inthis module, but it will work as is for a simple request.*/extern HTRequest * HTRequest_new (void);/*(  Clear a Request Object)Clears all protocol specific information so that the request object can beused for another request. It should be used with care as application specificinformation is not re-initialized. Returns YES if OK, else NO.*/extern BOOL HTRequest_clear (HTRequest * me);/*(  Create a duplicate)Creates a new HTRequest object as a duplicate of the src request. ReturnsYES if OK, else NO*/extern HTRequest * HTRequest_dup (HTRequest * src);/*  Create a duplicate for Internal useCreates a new HTRequest object as a duplicate of the src request. The differenceto the HTRequest_dup function is that we don't copy the error_stack and otherinformation that the application keeps in its copy of the request object.Otherwise it will be freed multiple times. Returns YES if OK, else NO*/extern HTRequest * HTRequest_dupInternal (HTRequest * src);extern BOOL HTRequest_setInternal (HTRequest * request, BOOL mode);extern BOOL HTRequest_internal (HTRequest * request);/*(  Delete Object)This function deletes the object and cleans up the memory.*/extern void HTRequest_delete (HTRequest * request);/*.  Issuing a Request.These are the "basic request methods" provided directly by the Requestclass. This is a very low level API as the caller must have set up the requestobject before passing it to libwww. There are two versions: one for issuingclient requests and one for issuing server requests. You will probably mostoften use the client version, but, in fact, libwww can also deal with incomingconnections. You can find many higher level issuing functions in theHTAccess module. If you like, you can of courseuse this directly!*/extern BOOL HTLoad (HTRequest * request, BOOL recursive);extern BOOL HTServe(HTRequest * request, BOOL recursive);/*.  Killing a Request.This function kills this particular request, see HTNetmodule for a function that kills them all. If you know that you arepipelining requests (typically the case for GUI browsers, robots etc.) thenit is often not enough to just kill a single request as the whole pipelinegets affected. Therefore, in that case you MUST call theHTHost_killPipe function instead,*/extern BOOL HTRequest_kill(HTRequest * request);/*Note that you can get to the HTHost object via the HTNetobject which you can get by callingHTRequest_net(...)..  Relations to Other Libwww Objects.The Request object is linked to a set of other libwww objects - here's howto get to these objects...(  Binding to an Anchor Object)Every request object has an anchor associatedwith it. The anchor normally lives until the application terminates but arequest object only lives as long as the request is being serviced. If theanchor that we have requested is a child anchor then we always loadthe parent anchor; after the load jump to the location. A child anchoris a an anchor which points to a subpart of the document (has a "#" in theURL).*/extern void HTRequest_setAnchor (HTRequest *request, HTAnchor *anchor);extern HTParentAnchor * HTRequest_anchor (HTRequest *request);extern HTChildAnchor * HTRequest_childAnchor (HTRequest * request);/*(  Binding to a User Profile)Each request is associated with a User profilewhich contains information about the local host name, email address of theuser, news server etc. A request object is created with a default "genericuser" but can be assigned a specific user at any time.*/extern BOOL HTRequest_setUserProfile (HTRequest * request, HTUserProfile * up);extern HTUserProfile * HTRequest_userProfile (HTRequest * request);/*(  Binding to a Net Object)If a request is actually going on the net then the NetManager is contacted to handle the request. The Net manager creates aHTNEt object and links it to the Request object. You can get to the HTNetobject using the following functions.*/extern HTNet * HTRequest_net (HTRequest * request);extern BOOL HTRequest_setNet (HTRequest * request, HTNet * net);/*Note that you can go from the HTNet object to theHTHost object by calling HTNet_host(...).(  Binding to a Response Object)If a request is actually going on the net and we are getting a response backthen we also create a HTResponse object andbind it to the request object. Once we know what to do with the response,we may transfer the information to the anchor object.*/extern HTResponse * HTRequest_response (HTRequest * request);extern BOOL HTRequest_setResponse (HTRequest * request, HTResponse * response);/*.  Set the Method for the Request.The Method is the operation to be executed on the requested object. The defaultset if the set of operations defined by the HTTP protocol, that is "GET","HEAD", "PUT", "POST", "LINK", "UNLINK", and "DELETE" but many of these canbe used in other protocols as well. The important thing is to think of therequested element as an object on which you want to perform an operation.Then it is for the specific protocol implementation to try and carry thisoperation out. However, not all operations can be implemented (or make sense)in all protocols.Methods are handled by the Method Module, andthe default value is "GET".*/extern void HTRequest_setMethod (HTRequest *request, HTMethod method);extern HTMethod HTRequest_method (HTRequest *request);/*.  Priority Management.The request can be assigned an initial priority which then gets inheritedby all HTNet objects and other requests objectscreated as a result of this one. You can also assign a separate priorityto an indicidual HTNet object by using the methods in theNet manager.*/extern HTPriority HTRequest_priority (HTRequest * request);extern BOOL HTRequest_setPriority (HTRequest * request, HTPriority priority);/*.  Pipelining Managament.Libwww supports HTTP/1.1 pipelining which greatly optimizes HTTP's behaviorover TCP. libwww also tries very hard to minimize the number of TCP packetssent over the network. This is done by buffering outgoing requests untileither a minimum amount of data has been collected or a timeout causes aflush to happen. The application can override the output buffering by explicitrequest a request object to be flushed.*/extern BOOL HTRequest_setFlush (HTRequest * me, BOOL mode);extern BOOL HTRequest_flush (HTRequest * me);/*(  Force the Pipeline to be Flushed Immediately)Forcing a fluch immediatly is slightly different as this can be done in"retrospect". That is, if suddenly the application decides on performinga flush after the request was initiated then it can use this function toflush at a later time.*/extern int HTRequest_forceFlush (HTRequest * request);/*.  Dealing with Request Error Messages.Errors are, like almost anything,  kept in lists. An error list can beassociated with a request using the following functions. In order to make life easier, there are also some easy mapping functions to theHTError object, so that you can add an error directlyto a request object.*/extern HTList * HTRequest_error (HTRequest * request);extern void HTRequest_setError	(HTRequest * request, HTList * list);extern void HTRequest_deleteAllErrors (HTRequest * request);/*These are the cover functions that go directly to theError Object*/extern BOOL HTRequest_addError (HTRequest * 	request,				HTSeverity	severity,				BOOL		ignore,				int		element,				void *		par,				unsigned int	length,				char *		where);extern BOOL HTRequest_addSystemError (HTRequest * 	request,				      HTSeverity 	severity,				      int		errornumber,				      BOOL		ignore,				      char *		syscall);/*.  Max number of Retrys for a Down Load.Automatic reload can happen in two situations:	 	   o 	     The server sends a redirection response	   o 	     The document has expired	 	 In order to avoid the Library going into an infinite loop, it is necessaryto keep track of the number of automatic reloads. Loops can occur if theserver has a reload to the same document or if the server sends back a Expiresheader which has already expired. The default maximum number of automaticreloads is 6.*/extern BOOL HTRequest_setMaxRetry (int newmax);extern int  HTRequest_maxRetry (void);extern int HTRequest_retrys (HTRequest * request);extern BOOL HTRequest_doRetry (HTRequest *request);extern BOOL HTRequest_addRetry (HTRequest * request);extern int HTRequest_AAretrys (HTRequest * request);extern BOOL HTRequest_addAARetry (HTRequest * request);/*.  Set Max Forwards for TRACE methods.The TRACE method is used to invoke a remote, application-layerloop-back of the request message. The final recipient of the request SHOULDreflect the message received back to the client as the entity-body of a 200(OK) response. The final recipient is either the origin server or the firstproxy or gateway to receive a Max-Forwards value of zero (0) in the request.A TRACE request MUST NOT include an entity.*/extern BOOL HTRequest_setMaxForwards (HTRequest * request, int maxforwards);extern int HTRequest_maxForwards (HTRequest * request);/*.  Preemptive or Non-preemptive Access.An access scheme is defined with a default for using either preemptive (blockingI/O) or non-preemptive (non-blocking I/O). This is basically a result of theimplementation of the protocol module itself. However, if non-blocking I/Ois the default then some times it is nice to be able to set the mode to blockinginstead. For example, when loading the first document (the home page),blocking mode can be used instead of non-blocking.*/extern void HTRequest_setPreemptive (HTRequest *request, BOOL mode);extern BOOL HTRequest_preemptive (HTRequest *request);/*.  Content Negotiation.When accessing the local file system, the Library is capable of performingcontent negotioation as described by the HTTP protocol. This is mainly forserver applications, but some client applications might also want to usecontent negotiation when accessing the local file system. This method enablesor disables content negotiation - the default value is ON.*/extern void HTRequest_setNegotiation (HTRequest *request, BOOL mode);extern BOOL HTRequest_negotiation (HTRequest *request);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美极品xxx| 久久 天天综合| 亚洲第一久久影院| 国产不卡视频一区| 欧美性三三影院| 国产精品久久久久久久久晋中| 亚洲一区在线电影| 大胆亚洲人体视频| 中文字幕电影一区| 北条麻妃国产九九精品视频| 3atv在线一区二区三区| 欧美一区二区在线播放| 精品久久久久久久久久久久久久久久久| 欧美久久一区二区| 久久免费的精品国产v∧| 欧美成人免费网站| 日韩一区二区中文字幕| 精品久久久久久最新网址| 亚洲成年人网站在线观看| 天天综合色天天| 国产成人日日夜夜| 欧美老女人第四色| 精品视频一区三区九区| 一区二区三区四区不卡在线| 久久精品国产秦先生| 国产精品人妖ts系列视频| 成人av在线电影| 亚洲永久免费av| 欧美一级日韩免费不卡| 久久精品久久精品| 中文字幕一区日韩精品欧美| 欧美综合天天夜夜久久| 日本三级韩国三级欧美三级| 欧美xfplay| 91久久精品午夜一区二区| 日韩在线a电影| 久久精品综合网| 色婷婷久久综合| 亚洲成人精品一区| 日本一区二区三区久久久久久久久不| 99视频国产精品| 午夜欧美大尺度福利影院在线看| 日韩欧美国产1| 国产成人aaa| 蜜桃91丨九色丨蝌蚪91桃色| 中文欧美字幕免费| 91麻豆精品91久久久久同性| 精品综合久久久久久8888| 亚洲精品国产无天堂网2021 | 亚洲欧美日韩国产成人精品影院| 91久久人澡人人添人人爽欧美| 老司机午夜精品| 欧美国产97人人爽人人喊| 欧美电视剧在线看免费| 波多野结衣中文一区| 日韩激情中文字幕| 亚洲欧洲国产日韩| 久久麻豆一区二区| 91麻豆精品国产无毒不卡在线观看 | 中文字幕在线不卡视频| 欧美日韩成人在线| 成人av免费在线播放| 依依成人综合视频| 国产视频不卡一区| 欧美成人猛片aaaaaaa| 色网站国产精品| 国产精品一级在线| 青娱乐精品在线视频| 亚洲乱码精品一二三四区日韩在线| 日韩女优视频免费观看| 不卡欧美aaaaa| 国产真实乱子伦精品视频| 一二三区精品福利视频| 国产精品妹子av| 国产精品久久久久久久浪潮网站| 久久久亚洲精品石原莉奈 | 国产麻豆精品theporn| 精品一区二区三区日韩| 国产乱子伦视频一区二区三区| 九色porny丨国产精品| 久久激情五月婷婷| 国产制服丝袜一区| 国产成人午夜片在线观看高清观看 | 国产日韩欧美亚洲| 国产女同性恋一区二区| 久久久99精品免费观看| 中文字幕 久热精品 视频在线| 国产日韩欧美高清| 亚洲人成精品久久久久| 亚洲国产乱码最新视频| 亚洲v精品v日韩v欧美v专区 | 麻豆精品一区二区综合av| 蜜桃视频一区二区三区| 国产精品资源在线| 成人免费视频视频| 日本道精品一区二区三区| 欧美福利电影网| 久久综合久久综合亚洲| 国产精品毛片久久久久久| 亚洲视频狠狠干| 青青国产91久久久久久 | 成人精品视频.| 91久久久免费一区二区| 91精品国产高清一区二区三区蜜臀| 欧美一区日本一区韩国一区| 国产日韩一级二级三级| 亚洲精品乱码久久久久| 蜜臀久久久久久久| 成人在线综合网| 欧美色综合久久| 亚洲精品一线二线三线| 亚洲日本va在线观看| 日韩高清一级片| 高清av一区二区| 欧美乱熟臀69xxxxxx| 国产日韩欧美一区二区三区乱码| 一级精品视频在线观看宜春院| 丝袜亚洲另类丝袜在线| 成人涩涩免费视频| 欧美一级片在线观看| 国产精品不卡视频| 久久精品72免费观看| 在线免费不卡视频| 国产亚洲欧美在线| 婷婷夜色潮精品综合在线| 丁香激情综合五月| 日韩一级片在线观看| 一区二区视频免费在线观看| 久久99精品久久久久久动态图| 色综合久久久久网| 久久久不卡影院| 日韩国产一区二| 在线观看网站黄不卡| 久久精品水蜜桃av综合天堂| 日韩av一区二| 欧美亚洲综合网| 国产精品久久网站| 国产一区二区三区四区五区美女| 欧美日韩国产影片| 亚洲精品中文在线| 国产91丝袜在线观看| 日韩午夜在线播放| 日韩国产精品久久久| 欧美性视频一区二区三区| 中文字幕一区在线观看视频| 国产一区二区三区美女| 日韩欧美精品在线| 日本不卡视频在线| 91精品综合久久久久久| 亚洲一区二三区| 欧美主播一区二区三区美女| 亚洲精品免费在线观看| jvid福利写真一区二区三区| 国产日韩欧美综合一区| 国产成人自拍网| 久久久一区二区三区捆绑**| 免费av成人在线| 欧美va日韩va| 精品一区二区三区免费观看 | 成人av集中营| 国产精品视频免费看| 国产.精品.日韩.另类.中文.在线.播放| 日韩欧美电影一二三| 欧美a一区二区| 日韩视频免费观看高清完整版在线观看 | 国产精品99久久久久久久vr| 欧美tk—视频vk| 国产精品综合一区二区三区| 久久蜜臀精品av| 成人伦理片在线| 亚洲欧美怡红院| 日本久久电影网| 亚洲国产视频网站| 欧美视频精品在线| 日本aⅴ免费视频一区二区三区| 欧美一级日韩一级| 国产麻豆精品久久一二三| 国产欧美精品日韩区二区麻豆天美| 丁香网亚洲国际| 日韩一区中文字幕| 欧美熟乱第一页| 麻豆国产精品官网| 国产亚洲精品久| 97精品国产97久久久久久久久久久久| 亚洲欧美一区二区在线观看| 在线免费观看成人短视频| 日韩—二三区免费观看av| 精品国产一区二区三区四区四| 激情深爱一区二区| 国产精品视频第一区| 欧美在线999| 久久激情五月婷婷| 国产精品二三区| 欧美三级韩国三级日本三斤| 久久66热re国产| 亚洲人成小说网站色在线| 欧美久久久久久蜜桃| 国产一区二区主播在线| 亚洲精品老司机| 久久蜜臀中文字幕|