1、C#中如何正确对url中的参数进行解码以 2、static变量

问题描述

问题一:“你好”的gb2312编码是:%C4%E3%BA%C3。utf-8编码是:%20%E4%BD%A0%E5%A5%BD我现在要的功能是aa.aspx?wd=%C4%E3%BA%C3和aa.aspx?wd=%20%E4%BD%A0%E5%A5%BD和aa.aspx?wd=你好在上述3种情况中,aa.aspx中都能识别并成功读取到关键词wd的值是“你好”问题二:有50万条记录,每题仅有8-10个汉字而已,不经常改动,但是很频繁用到,每次都从数据库读取我嫌效率低要放在哪些地方能够提高读取效率呢???static变量??还是xml?还是cache??我要的是能够提高读取数据的效率。

解决方案

解决方案二:
1、HttpUtility.UrlDecode2、Cache
解决方案三:
系统会根据内存使用的情况自动清空缓存,你考虑一下。
解决方案四:
第一个问题,不同编码很难通过本身来判断,最好统一使用UTF8,或者附加一个指示编码方式的字段,后台分情况处理。第二个问题,如果不是取出全部,还是使用数据库吧,效率快慢自己测
解决方案五:
引用1楼starfd的回复:

1、HttpUtility.UrlDecode2、Cache

关于HttpUtility.UrlDecode的问题是,在request时就已经是乱码了
解决方案六:
引用4楼Bolang8383的回复:

Quote: 引用1楼starfd的回复:
1、HttpUtility.UrlDecode2、Cache

关于HttpUtility.UrlDecode的问题是,在request时就已经是乱码了

为什么会接收到3种不同方式传来的参数??你应该统一一下,而不要老企图让代码什么都能认识万一还有页面不通过get提交而通过post提交,你要判断的就更多了再万一有页面传过来的不是wd=你好,而是dw=你好光做这个判断你就得累死
解决方案七:
其实如何传递参数,这本身就是一种"协议"你规定了一个协议,那么谁要调用,谁就都要遵守这个协议而不是胡乱传过来什么东西,你都企图能弄明白他到底想干啥
解决方案八:
对参数编码解码就是按照一个规则经行的。你可以自己写方法,也可以用自带的方法。UrlDecode是用的比较多的。cache或者静态化页面顺便也提高下数据库读取的效率
解决方案九:
引用7楼yue547283947的回复:

对参数编码解码就是按照一个规则经行的。你可以自己写方法,也可以用自带的方法。UrlDecode是用的比较多的。cache或者静态化页面顺便也提高下数据库读取的效率

cache是不是有可能被系统回收资源的???cache可靠点还是static变量可靠点??

时间: 2025-01-23 22:02:03

1、C#中如何正确对url中的参数进行解码以 2、static变量的相关文章

Elasticsearch——禁止Body中的index覆盖Url中的index参数

本篇继续一下Elasticsearch日常使用的技巧翻译. 在Elasticsearch有很多的api支持在body中指定_index等信息,比如mget或者msearch以及bulk. 默认的情况下,body中的index会覆盖掉url中的index参数.比如: $ curl localhost:9200/test/_mget?pretty -d '{"docs":[{"_index":"test1","_id":1},{&

教你如何在CI框架中使用 .htaccess 隐藏url中index.php_php技巧

秉承MVC架构的思想,CI中的所有控制器都需要经过单点入口文件index.php(默认)来加载调用.也就是说,在默认情况下,所有CI开发项目的URL都形如以下这种形式: http://localhost/index.php/blog/logs/this_is_a_test_entry 很显然,默认情况下,index.php在URL地址段中的存在一定程度上影响了URL的简洁和SEO的进行.我们可以通过下面本文介绍的方法来去掉这个讨厌的Index.php. 你或许已经注意到在CodeIgniter用

实例浅说 解析网站URL中常犯的那些问题

很多时候,当我们还在注重外链和内容的之后,结构这一块已经慢慢的为我们上了紧箍咒,我相信每一位朋友都知道结构的重要性,在网站的上线初期,结构就是我们的整体规划中最为重要的一部分,这篇文章呢,就为自己的结构方面的理解开一个系列,这个系列就从URL的问题开始,说一下我们平时在生活中常见的那些URL设置性问题,希望更多的朋友可以多多交流了. 第一点:URL外链时候,关于"/"的一些问题 首先呢,取一下百度中关于A5的二级域名的截图,如下 在这张图中,笔者用红线标记了URL,不知道大家会感觉到什

Jsp页面URL中传递参数乱码的方法

  Jsp页面在URL中传递参数会出现乱码 解决方法如下: 一.使用更改Tomcat的方法.这个方法简单,但是需要改动的地方是服务器软件级别的,如果稍微变动系统将无法正确转码,移植性不高. 1.来到tomcat目录,找到conf目录下的server.xml问价,打开,找到标签,在最后添加URIEncoding='GBK',效果如下: view plaincopy to clipboardprint? port="8080"maxThreads="150"minSpa

jquery获取URL中参数解决中文乱码问题的两种方法

 从A页面通过url传参到B页面时,获取URL中参数出现中文乱码问题,解析url参数的正确方法如下,感兴趣的朋友可以参考下 从A页面通过url传参到B页面时,解析url参数可以用下面两种方法:  方法一:正则分析法  代码如下: function getQueryString(name) {  var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");  var

javascript-js获取url中的参数乱码

问题描述 js获取url中的参数乱码 我的url为:test.jsp?lastname=杨涛 js是这么写的 window.onload=function(){ alert(GetQueryString("lastname")); } function GetQueryString(name) { var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)","i&q

[故障引起的故事]URL中带加号的处理

问题起因:      客户订购了一关键字为"e+h 变送器" , 在首页推荐广告中,会根据用户在search 搜索过的关键字进行一个匹配投放.技术实现是UED 通过JS 获取cookie 中的h_keys 内容,拼装到 http://xxxxx/advert/ctp_advert.htm?num=4&keyword= {keyword} . 这里取出来对应的cookie 信息为中文,最后通过一个ajax 发起一个GET请求.     所以针对最后的请求是:http://xxxx

session d-安卓使用volley抓包的问题,sessionId是存放在url中的

问题描述 安卓使用volley抓包的问题,sessionId是存放在url中的 20C 想做个模拟登录学校教务处网站获取学生信息的软件,但是每次直接输入url进入登录界面,都会重定向一次,然后url中被加上了sessionId有没有办法能拦截到这个sessionId,或者获取处理后的url.这样才能正确的登录 解决方案 把学号密码发到服务器,然后在服务器端用正则表达式处理教务系统的网页不就行了吗

js获取url链接中的域名、Url、相对路径和参数的例子

用js提取出url中的域名(domain)部分,用split()函数就可以了. 因为一个正确的url必定是由http://或者是https://.domain.路径/参数组成,所以可以用split以/进行分割成数组,取第3部分就是域名了. 代码范例: var url = 'http://www.111cn.net/phper/php.html'; var domain = url.split('/'); //以"/"进行分割 if( domain[2] ) {     domain =