非常期待您的回答!!请大家看好我的问题。 我有一个简单的servlet程序,我现在新建一个浏览器空白页, 在空白页地址栏输入请求servlet的路径和中文参数,这是比较特别的。 到后台是乱码。首先请大家先明确,不同的浏览器或同一浏览器的不同设置, 当你直接在地址栏输入中文时,浏览器对其编码是不同的, 比如firefox是 utf-8 IE是gbk, 那么在后台我怎么处理呢
-
一个地址栏输入请求和中文参数后台处理的问题20
2013年3月22日 11:45
5个答案 按时间排序 按投票排序
-
有二个方法,第一种是对所有的传参都进行编码。
第二种是对于URL直接输入的,由于输入非法,直接跳转到一个ERROR页面就行了。2013年3月23日 15:58
-
首先,如果你是在地址栏里输入参数时,意味着数据是伴随着消息头传递过去的,就是用get方法传递数据的。浏览器会自动将其转换成十六进制编码。
其次,后台接收的时候只能用request.getParamerter("")取值。
此时如果你的web服务接收数据时默认的字符集是Iso-8859-1,那么
第一种办法:
String test = req.getParameter("test");
test = new String(test.getBytes("iso-8859-1"),浏览器编码格式);
你就可以获取到中文了。
第二种办法:
String qs = req.getQueryString();//直接获取到十六进制数据(十六进制的格式是:%xy)
qs = URLDecoder.decode(qs,浏览器编码格式);//翻译十六进制的字符串2013年3月22日 21:13
-
即便浏览器相同,情况也不同。比如IE有是否用UTF8发送URL的选项。
所以,我的经验是——放弃!哈。
在使用说明之类的文档里会提上一句:“不支持直接地址栏输入。”2013年3月22日 14:51
相关推荐
- GET:主要用于获取资源,它在URL中携带参数,请求信息显示在地址栏中,通常用于无副作用的查询操作。 - POST:用于向服务器提交数据,常用于创建或更新资源,数据隐藏在请求体中,对用户不可见,可处理大量数据。 ...
- **案例一**:当用户在浏览器地址栏输入一个网址时,浏览器会向服务器发送一个GET请求,请求该网址对应的资源。 - **案例二**:在API设计中,GET方法通常用于检索数据,例如查询某个用户的详细信息。 - **POST...
转换过程中,汉字会被拆分成多个字节,每个字节对应一个十六进制数字,这就是你在地址栏看到的“编码格式”。 例如,汉字“搜索”在UTF-8编码下,可能会被转换为"%E6%90%9C%E7%B4%A2"这样的形式。这里的"%E6%90%9C...
以下是一个简单的GET请求示例: ```html 输入发送的内容: 发送" /> ``` 对应的ASP.NET页面会使用`Request.QueryString`来获取GET参数: ```aspnet string content = Request.QueryString["content1"]; ...
8. **用户交互**:源码中还会包含处理用户输入(如地址栏输入、前进/后退按钮、书签等)的代码,以及相应的事件处理函数。 9. **设置和配置**:浏览器可能提供一系列可配置的选项,如默认搜索引擎、字体设置、隐私...
- 处理中文字符编码问题非常重要,尤其是在处理用户输入时。 - 常见的解决方案包括设置页面编码、URL编码以及请求参数编码。 ### 11. 重定向 - **重定向** 是一种让客户端重新发起新请求的方式。 - 通过`response....
综上所述,配置和使用百度Ueditor涉及到了前端与后端的协同工作,包括动态访问地址的设定、图片存储路径的管理、后台服务的备份策略以及安全性和性能优化等多个层面。理解并掌握这些知识点,对于成功集成和高效使用...
橙色收货地址页面小程序源码是一套用于开发微信小程序的源代码,它专注于实现用户在购物过程中输入、编辑和管理收货地址的功能。通过学习和研究这套源码,开发者可以深入了解微信小程序的架构和组件使用,提升在电商...
3. **服务器处理**:在ASP.NET的后台代码中,接收到AJAX请求后,根据输入的文本查询SQL Server数据库。这可能涉及SQL的LIKE操作符或者全文搜索功能。 4. **返回结果**:查询完成后,将匹配的建议数据(例如,前N个...
3. **页面状态管理**:因为Ajax请求不会改变浏览器地址栏,可能影响用户的前进后退操作。可以使用`history.pushState()`和`history.replaceState()`方法配合HTML5的History API来解决。 4. **用户体验**:在Ajax...
2. **页面跳转**:Ajax请求无法改变浏览器地址栏,需使用History API或框架处理。 3. **SEO问题**:搜索引擎爬虫可能无法执行JavaScript,导致Ajax加载的内容无法被索引。使用服务端渲染或预渲染技术改善。 4. **...
3. **页面跳转问题**:AJAX加载的内容不会改变浏览器地址栏,不利于书签和后退操作。可以使用History API或pushState/replaceState方法模拟URL变化。 4. **安全问题**:AJAX请求可能引发跨站脚本攻击(XSS)和跨站...
3. **后台处理**:服务器接收到请求后,可以是Java或.NET等后端框架处理,根据查询参数查询数据库或其他数据源,找到匹配的建议项。 4. **返回响应**:服务器将匹配的结果以JSON、XML或其他格式返回给前端。 5. **...
2. `favicon.ico`:这是网站的图标,通常显示在浏览器地址栏或收藏夹中,为网站提供视觉识别度。 3. `api.php`:API(Application Programming Interface)是程序间交互的接口,此文件可能是处理支付请求的核心部分...
- **事件处理**:实现用户交互,例如,当用户在地址栏输入URL时触发加载事件,点击前进/后退按钮时切换历史记录。 4. **网页保存**: - **本地存储**:访问的网页可以保存为HTML文件,同时保存相关资源(如图片、...
它通过在用户键入时显示一个下拉列表,列出匹配的选项来帮助用户更快地完成输入。这种技术广泛应用于搜索引擎、地址栏、表单字段等场景中。 #### 实现原理 自动联想通常依赖于客户端(通常是JavaScript)和服务器...
解决方法是打开注册表(开始搜索栏输入 regedit),在 HKEY_CURRENT_USER\Software\Microsoft\Fiddler2 下创建一个 DWORD,值置为 80(十进制). FiddlerScript Rule FiddlerScript Rule 是 Fiddler 的一种编程...
7. **requestInterval.js**:这是一个辅助函数,用于实现定时请求,类似于`setInterval`,但更健壮,能够处理浏览器的内存管理和性能优化。在生成GIF时,这个函数可能会用来控制图像帧的捕捉频率。 8. **README.md*...
CG模块的核心作用在于提供一个平台,让客户能够方便地进行询价、请求服务,同时也方便企业与客户之间的信息交流和业务处理。 一、CG模块概述 CG模块是Customer Group的简称,它作为2BizBox系统与客户之间的桥梁,使...