webkit学习笔记1---webcore简单执行流程
来源:互联网 发布:真小人 伪君子知乎 编辑:程序博客网 时间:2024/05/18 16:13
webcore执行的大致流程如下:
1 通过URL构造请求
1 WebMutableURLRequest::initWithURL(
BSTR url,
WebURLRequestCachePolicy cachePolicy,
double timeoutInterval);
url:URL地址
cachePolicy:这实际是个枚举类型
typedef enum _WebURLRequestCachePolicy
{
WebURLRequestUseProtocolCachePolicy,
WebURLRequestReloadIgnoringCacheData,
WebURLRequestReturnCacheDataElseLoad,
WebURLRequestReturnCacheDataDontLoad
} WebURLRequestCachePolicy;
timeoutInterval:用来设置超时的时间
2 WebMutableURLRequest::setHTTPMethod(
BSTR method)
method:GET or POST
2 载入请求
WebFrame::loadRequest(
IWebURLRequest* request);
Request:请求对象指针
具体的函数调用栈如下:
3 资源的下载
Loader模块会首先判断资源是否在cache中,如果没有,会调用相关平台的下载库,这里是CFNetwork,调用的是CFNetwork.dll
4 数据的接收
具体过程如下
static void didReceiveData(CFURLConnectionRef conn, CFDataRef data, CFIndex originalLength, const void* clientInfo);
void FrameLoader::receivedFirstData()
HRESULT WinLauncherWebHost::updateAddressBar(IWebView* webView)
函数调用栈如下:
5 数据的处理---创建dom树和render树
入口点:
void HTMLDocumentParser::pumpTokenizer(SynchronousMode mode)
在生成DOM树每个节点的同时,同步生成Layout树的每个节点,其中保存了布局信息,和CSS样式信息。
6数据的显示
调用平台相关的图形库,我这里是CoreGraphics库
- webkit学习笔记1---webcore简单执行流程
- WebKit 学习笔记(1)
- WebKit 学习笔记(1)
- webkit 学习笔记 1
- WebKit之WebCore篇
- WebKit之WebCore
- 浅谈WebKit之WebCore
- WebKit之WebCore篇
- webkit 与 webcore
- QT webkit学习笔记(1)
- QT webkit学习笔记(1)
- 浅谈WebKit之WebCore篇
- 浅谈WebKit之WebCore篇
- 浅谈WebKit之WebCore篇
- WebKit源码解析 -- WebCore:: CSSParserValue
- WebKit源码解析 -- WebCore::CSSValue
- 浅谈WebKit之WebCore篇
- 浅谈WebKit之WebCore篇
- hash表--d-left-hashing
- 1.2项目规范
- retain和copy还有assign的区别,以及引用计数
- 5.把hbm转化为DDL有两种方式:总结
- Android的Tab控件(二)
- webkit学习笔记1---webcore简单执行流程
- 我的第三个Android应用软件——《新概念3》
- Android定制属于你自己的导航栏
- 设计包含min函数的栈
- 大型网站架构演变和知识体系
- 数理逻辑:谓词演算(目录)
- poj (3468)线段树lazy操作
- XCLNetSearch1.0(ASP.NET通用查询服务器控件)
- 和菜鸟一起学linux总线驱动之初识USB