《TypeScript图形渲染实战:2D架构设计与实现》 —2.4.5 使用doGet请求文本文件并解析
2.4.5 使用doGet请求文本文件并解析
下面来测试一下doGet静态方法,代码如下:
//从服务器请求level.proc文件,该文件是Doom3的关卡文件,文件大小为261KB,word中字数统计将近7万个单词
let response : HttpResponse = HttpRequest . doGet ( "level.proc" ) ;
//如果请求成功,进行文件解析
if ( response . success === true ) {
//将response转换为string类型,因为知道是文本文件
str = response . response as string ;
//设置要解析的字符串
tokenizer . setSource ( str ) ;
while ( tokenizer . moveNext ( ) ) {
if ( tokenizer . current . type === ETokenType . NUMBER ) {
console.log ( "NUMBER : " + tokenizer . current . getFloat ( ) ) ;
}
else {
console.log ( "STRING : " + tokenizer . current . getString ( ) ) ;
}
}
}
运行程序后,会在浏览器的控制台输出所有解析后的Token,部分输出的截图如图2.7所示。
图2.7 doGet请求文本文件并解析
从图2.7中会发现存在两个问题:
* STRING输出部分有空白字符(实际上该问题仅出现在Windows系统下)。
* doGet使用同步请求,可能导致主线程堵塞,因此被建议不要使用同步请求。
下面来解决这两个问题。
- 点赞
- 收藏
- 关注作者
评论(0)