问题描述
我在 AngularJs 应用程序中遇到了有线问题.当用户尝试登录应用时,如果密码中包含与号 (&),则无法验证用户.
I am having a wired issue in my AngularJs application. When user is trying to login to the app and if the password contains ampersand (&), then it couldn't able to validate the user.
我正在使用 OWIN、oAuth2.0 JWT 令牌来验证我的 Asp.Net Web API.
I am using OWIN, oAuth2.0 JWT token to validate my Asp.Net Web APIs.
当我调试时,我发现如果密码包含 & 符号 (&),那么它会截断 & 符号 (&) 中的所有字符.
When i debug i found that if the password contains ampersand (&), then it is truncating all the characters from ampersand (&).
例如,如果密码为x&x",则 OAuthValidateClientAuthenticationContext 上下文只会获取密码值中的x".
For example, if the password is 'x&x' the OAuthValidateClientAuthenticationContext context is getting only 'x' in password value.
我附上了问题的屏幕截图点击查看问题..
I have attached a screen shot of the issue click to see the issue..
对此问题的任何帮助,我们将不胜感激.
Any help on this issue, would be highly appreciated.
推荐答案
我猜测该值被解释为查询字符串分隔符.
Am guessing the value is being interpreted as a query string separator.
尝试使用javascript方法
Try using the javascript method
encodeURI()
或者
EncodeURIcomponent()
在发布到服务器之前你的密码值,所以和号变成了
On your password value before posting to the server, so the ampersand becomes
&
服务器将为您解码.
如果您不这样做,您可能会发现斜杠和问号在密码中也不起作用
The server will decode this for you.
You'll probably find that slashes and question marks will also not work in passwords if you dont
这篇关于Asp.Net Web API oAuth 2.0 无法使用包含与号 (&) 的密码进行验证的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!


大气响应式网络建站服务公司织梦模板
高端大气html5设计公司网站源码
织梦dede网页模板下载素材销售下载站平台(带会员中心带筛选)
财税代理公司注册代理记账网站织梦模板(带手机端)
成人高考自考在职研究生教育机构网站源码(带手机端)
高端HTML5响应式企业集团通用类网站织梦模板(自适应手机端)