Flex——加载中文路径文件

news/2024/5/19 17:00:14 标签: flex, http服务器, 服务器, url, 浏览器, 加密
 

使用Flex/FlashLoaderURLLoader(或它们的派生类)使用URLRequest,通过http加载带中文路径的文件时,出现文件不存在错误。

 

例如:http://{host}/Common/Asset/新文件夹1/图片1.jpg

通过在服务器http报文进行监控。

 

Case1:用Loader加载时,服务器收到的报文是:

GET /Common/Asset/%D0%C2%CE%C4%BC%FE%BC%D01/%CD%BC%C6%AC1.jpgHTTP/1.1

Case2:在浏览器直接请求,服务器收到的报文是:

GET /Common/Asset/%E6%96%B0%E6%96%87%E4%BB%B6%E5%A4%B91/%E5%9B%BE%E7%89%871.jpgHTTP/1.1

Case3:用encodeURI对“/Common/Asset/新文件夹1/图片1.jpg加密,得到:

/Common/Asset/%E6%96%B0%E6%96%87%E4%BB%B6%E5%A4%B91/%E5%9B%BE%E7%89%871.jpg

 

对比case1,2,3可以发现:Case1GB2312编码的url escapeCase23UTF-8编码的url escape

这说明Flex/Flash的对于URLRequest(url)中的url有中文路径时,会采用GB2312编码进行url escape,这跟encodeURIUTF-8编码是不一致的。

 

我在服务器端处理该问题

我的http服务器对请求路径先判断是UTF-8还是GB2312编码,然后再进行相应解码。这样更能灵活应对上述产生的2种编码问题。

 


http://www.niftyadmin.cn/n/1574641.html

相关文章

linux端口混杂模式简介~

设置端口混杂模式:ifconfig eth0 promisc设置混杂ifconfig eth0 -promisc 取消混杂 网卡工作模式有4种,分别是:广播(Broadcast)模式多播(Multicast)模式单播模式(Unicast)混杂模式(Promiscuous)。 #注释&a…

EBMIDE——数据库管理

介绍 数据库管理模块主要面向开发/维护人员进行简单的数据库管理。 主要功能: 数据库连接配置,查看表结构,执行SQL。 主要优点: * 它运行在Web上。 * 它同时管理多种数据库。 * 它与开发平台整合,能够提供表结构&#…

阿里云AI如何助攻世界杯?视频集锦背后的技术实践

本届世界杯互联网直播的顺利进行,离不开各大云计算厂商的支持。在这其中,阿里云是当之无愧的“C位“,除了优酷外,阿里云还支撑了CNTV、CCTV5客户端,为全网70%的世界杯直播流量保驾护航。 对于世界杯这种超大观看量级、…

Fixcel电子表单EBMIDE——处理多媒体输入与文件索引服务

图片 使用图片的需求情景有很多种,例如:登记客户的身份证,营业执照,头像;记录合同或文档的影印件;记录商品的相片等等。 在Fixcel电子表单中,使用图片组件能够轻松完成图片的输入。 支持本地上传…

第41件事 创新设计的4种方法

比如说户外的平面广告牌,有的广告牌一直保持静态,而有的广告牌则是利用平滑的动态转换效果切换到下一张广告牌,今天将阐述禅宗思想的最后一项:继承传统,不断创新。 创新设计指的是微创新(局部创新&#xff…

Fixwin电子窗体——介绍

概述 窗体是承载系统业务功能的基本单位,例如:XXX基本信息管理,XXX查询,XXX单据,XXX分析,XXX报表… 一个业务模块可以有多个窗体构成,例如:XXX信息管理【窗体1】,点击“添…

Fixwin电子窗体——基本信息模板

通过Fixwin电子窗体,设计几种常用的功能模块模版,在开发实际的项目时,采用模板创建相应模块能够节省工作量,并且通过模板建立的系统界面一致性也比较好。 以下是几种基本信息类的模板 模板1:简单的表格 常用的功能按钮…

高级排序

1、希尔排序 希尔排序是基于直接插入排序的,它在直接插入排序中增加了一个新特性,大大的提高了插入排序的执行效率。所以在讲解希尔排序之前,我们先回顾一下直接插入排序。 ①、直接插入排序 直接插入排序基本思想是每一步将一个待排序的记录…