2016-01-11 66 views
0

我在AngularJs應用程序中遇到了一個有線問題。當用戶嘗試登錄到應用程序時,如果密碼包含&符號(&),則無法驗證用戶。Asp.Net Web API oAuth 2.0無法使用包含&符號的密碼進行驗證(&)

我使用OWIN,oAuth2.0 JWT令牌來驗證我的Asp.Net Web API。

當我調試我發現,如果密碼包含&符號(&),那麼它會截斷所有字符從&符號(&)。

例如,如果密碼是'x & x',則OAuthValidateClientAuthenticationContext上下文在密碼值中只獲取'x'。

我附上了問題click to see the issue.的屏幕截圖。

在這個問題上的任何幫助,將不勝感激。

回答

3

我正在猜測該值被解釋爲查詢字符串分隔符。

嘗試使用JavaScript方法

encodeURI() 

或者

EncodeURIcomponent() 

在您的密碼值發送到服務器之前,這樣的符號成爲

& 

服務器將解碼此爲你。
你可能會發現,斜槓和問號也不會在密碼工作,如果你不

+0

謝謝......它的工作原理! – Raj

+0

偉大的東西,你可以請標記答案被接受? – Jack

+0

因爲我是新手,並且名聲低於15,所以不會讓我這麼做,或者我錯過了一些東西。請告訴我。 – Raj

相關問題