0
我正在一個項目中,我必須從Android客戶端應用程序訪問後端服務進行用戶認證。因此,我創建了具有以下結構的WCF REST服務。如何從Android客戶端調用REST WCF服務
//<summary>
// Checks whether user is exists or not
// </summary>
// <param name="UserName"></param>
// <param name="Password"></param>
// <returns></returns>
[OperationContract]
[WebGet(UriTemplate = "IsUserExist/{UserName}/{Password}", ResponseFormat = WebMessageFormat.Json)]
bool IsUserExist(string UserName, string Password);
// <summary>
// Log the time of specified user
// </summary>
// <param name="UserName"></param>
[OperationContract]
[WebGet(UriTemplate = "LogTime/{username}", ResponseFormat = WebMessageFormat.Json)]
string LogTime(string UserName);
而且我已經在IIS中成功部署了它。我可以輕鬆地從瀏覽器調用服務來執行用戶認證,這很好。
http://localhost:9001/HNNDataSerivce/LogInService.svc/IsUserExist/Bob/pass123
http://localhost:9001/HNNDataSerivce/LogInService.svc/LogTime/Bob
而這個服務調用分別返回所需的值作爲布爾和字符串。
現在我想從android客戶端進行相同的服務調用。爲此我創建了一個帶有文本框和按鈕的簡單演示應用程序。如果用戶在文本框中指定了用戶名和密碼,並且用戶單擊了按鈕,我想實現以下認證過程。
public void LoginButtonClick(View v) {
if(IsUserExist(UserName, Password))
LogTime(UserName)
else
// show invalid user message
}
尋找Android的改造 – j2emanue
作爲旁白的問題:爲什麼是** Login **方法稱爲IsUserExists? –
@cFrozenDeath調用IsUserExists的原因是爲了確保指定的用戶是否存在於數據庫中。如果它存在,則會調用LogTime函數來記錄日誌記錄的時間。 – nabin