
經網上查詢,登錄接口提示【用戶不存在或密碼錯誤】,大致有2種可能:
1. 密碼錯誤
密碼錯誤,除了手動拼寫錯誤外,很大的一部分是由於密碼轉換(加密)了。
對於Web端,我們可以通過F12,查看請求時的密碼是否加密。將加密后的密碼填充到password字段,就可以正常請求了。
對於移動端,我們可以通過Fiddler抓包,查看請求時的密碼是否加密。如果加密,解決方法同上。
2.登錄接口未勾選重定向
很多項目中,登錄接口請求成功后,會自動進行重定向。對於這種情況,需要在http請求中勾選【跟隨重定向】。

對於以上2種情況都正常的情況下,第3種情況就屬於低級錯誤了。
經過Fiddler抓取手機登錄和jmeter登錄做對比,發現用戶名、密碼等參數名稱、數據一致。問題無從查找。
經朋友提醒查看日志,在項目日志查看頁面,發現如下情況:

很明顯的區別是,jmeter登錄沒有用戶名。這就是提示【用戶不存在或密碼錯誤】的原因了。
再次詳細對比請求頭,最終結果揭曉:請求頭Content-Type填寫錯誤,導致參數傳遞錯誤。(此處,urlencode應為urlencoded)

