如何从Android客户端调用REST WCF服务

问题描述 投票:0回答:1

我正在一个项目中工作,我必须从Android客户端应用程序访问用于身份验证的后端服务。因此,我创建了一个具有以下结构的WCF REST服务。

    //<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

此服务调用分别返回所需的值boolean和string。

现在我想从Android客户端进行相同的服务调用。为此,我创建了一个带有文本框和按钮的简单演示应用程序。用户在文本框中指定用户名和密码,当用户单击按钮时,我想实现以下身份验证过程。

    public void LoginButtonClick(View v) {
    if(IsUserExist(UserName, Password))
        LogTime(UserName)
    else
    // show invalid user message

}
c# android wcf rest
1个回答
0
投票

这是一个简单的REST客户端库,您可以从Android调用它。有一个Android示例包括在内。

https://github.com/MelbourneDeveloper/RestClient.Net

代码都是开源的,因此您可以根据需要抓取所需的位。

编辑:回购从Bitbucket转移到Github

© www.soinside.com 2019 - 2024. All rights reserved.