1. 程式人生 > >解決登入提示http連線超時問題

解決登入提示http連線超時問題

系統一直登入不上,首先檢視關聯的登入系統,首先,因為這個系統是呼叫別的系統的登入介面來實現登入的那麼,關聯的系統如果出問題了,那麼這個肯定出問題。

首先看看關聯絡統是否能登入,在網頁輸入url,結果登入成功。

然後,再在url輸入提供的介面和引數,返回的json串如下

{"code":200,"message":"成功","data":{"xx..   這樣的結果是成功的。
那麼,看程式碼,進入debug模式
進入login介面方法,發現傳入的url和構造params皆是正常的,但是,reuslt卻有時候可以返回正常的結果,有時候不行。
result = NpHttpClientFactory.getPvdHttpClientPool().httpPost(request, url, params);
這個在客戶的現場是正確的。然後,查閱資料,測試get請求,可是,程式碼裡面沒有get請求啊。
檢查nginx配置,檢查tomcat配置。不斷的除錯。一晚上過去了....
第二天早上,我還是檢查,檢查eclipse是不是出問題了,重新除錯程式碼,一早上,系統沒登入成功,我快崩潰了。
下午,請領導幫我看了,領導看了半天,讓我e.printstack()來列印異常。
發現是http連線超時。
後來,領導通過svn 的showlong來檢視他之前的解決版本。發現這個連線時間,在不同的svn版本中是不同的。
後來增大了連線時間了。public abstract class AbstractNpHttpClientPool implements INpHttpClientPoolInterface {
在這個類中,
/**
 * 連線超時時間
 */
private static final int CONNECT_TIME_OUT = 50000;


/**
 * 讀取資料的socket超時時間
 */
private static final int SO_TIME_OUT = 50000;

重新登入,成功進入系統。後面遇到了其他問題,再進行處理。