zhouke 发表于 2015-3-22 23:43:50

ajax用户登录密码中有..符号怎么处理

ajax用户登录时候,用户的密码中含有..这样的符号就会没有反映,手动输入参数传递出现404页面,这样的问题要怎样解决

Closer 发表于 2015-3-23 00:32:26

轉 base64 再轉回來

yuzhigang5460 发表于 2015-3-23 08:43:51

Closer 发表于 2015-3-23 00:32
轉 base64 再轉回來

用urlencode即可,不用转回来了。

浏览器会把 . 解析成分隔符, urlencode一下即可, 浏览器会认识的。
把数据分开写,不要自己拼凑url地址,不会被编码。
$.get(url, {name:xxx, password:'....'}, function(data){});
这样不会有问题。

zhouke 发表于 2015-3-23 10:41:00

yuzhigang5460 发表于 2015-3-23 08:43
用urlencode即可,不用转回来了。

浏览器会把 . 解析成分隔符, urlencode一下即可, 浏览器会认识的。


用那个函数

Closer 发表于 2015-3-23 10:48:11

zhouke 发表于 2015-3-23 10:41
用那个函数

不是說了 urlencode ...

zhouke 发表于 2015-3-23 11:46:38

不行啊 测试了半天

zhouke 发表于 2015-3-23 12:12:14

Closer 发表于 2015-3-23 10:48
不是說了 urlencode ...

javascript如何进行base64编码,编码后php怎么解码呢。求解 谢谢

Closer 发表于 2015-3-23 13:46:13

zhouke 发表于 2015-3-23 12:12
javascript如何进行base64编码,编码后php怎么解码呢。求解 谢谢

方便的話直接貼上你有問題的文件
直接幫你調試比較快

yuzhigang5460 发表于 2015-3-24 22:09:17

本帖最后由 yuzhigang5460 于 2015-3-24 22:11 编辑

zhouke 发表于 2015-3-23 12:12
javascript如何进行base64编码,编码后php怎么解码呢。求解 谢谢
直接这么写应该没问题吧,反正ajax请求会自动帮你转码。


var url = 'http://www.abc.com/login/';
$.get(url, {name:'xxx', password:'....'}, function(data){});

如果你这么写可能会有问题: http://www.abc.com/login/?name=xxxx&password=....
浏览器不认。

或者你可以这么直接构造一个url地址:
encodeURI('http://www.abc.com/login/?name=xxxx&password=.... ');
也就是:

var url = encodeURI('http://www.abc.com/login/?name=xxxx&password=.... ');
$.get(url, null, function(data){});


页: [1]
查看完整版本: ajax用户登录密码中有..符号怎么处理