关于用户用错urlencode的详解

Qiniu 七牛问题解答

Build Status

Qiniu Logo

用户在客户端对一些文件名字带有中文的链接处理错误的一些说明和解决方案

问题解决方案

1,首先假如你有个带有中文名字的链接:(这里的链接只用来显示用,可能访问不了)

   http://down.51guanjian.net/163邮箱.rar

2,然后用户在网页端请求的时候却是这样的url:

这里写图片描述
原因解释:用户对带中文的url进行了错误的urlencode,他用的不是正常的utf-8的urlencode。

3,解决方案:

1,第一种方案:可以在后台代码处理下文件名字,然后将url拼接起来使用:
我用c#的代码演示下:
代码为:

  protected void Button1_Click(object sender, EventArgs e)
        {
            System.Text.Encoding encoding = System.Text.Encoding.UTF8;
            string HttpUtility_UrlEncode = System.Web.HttpUtility.UrlEncode(TextBox1.Text);
            string HttpUtility_UrlDecode = System.Web.HttpUtility.UrlDecode(HttpUtility_UrlEncode);
            TextBox2.Text = HttpUtility_UrlEncode;
        }

前端界面为:
这里写图片描述

拼接出来的为:
http://down.51guanjian.net/163%e9%82%ae%e7%ae%b1.rar
这个url跟之前我提到的错误的链接能看出区别吧。

2,这里我给你演示下快速的看下自己的编码是否正确的方式。是通过浏览器来测试

这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值