zoukankan      html  css  js  c++  java
  • 基于.Net下整合RestSharp,实现REST服务客户端

    原文地址:https://www.cnblogs.com/Mr-kevin/archive/2018/01/11/8269563.html

    一. 准备工作

      1. 点击此访问 RestSharp 官网,可作参考

      2. VS2012 中安装支持.Net4.0的最新版 RestSharp 插件

        工具---NuGet程序包管理器---程序包管理器控制台,输入如下命令

    Install-Package RestSharp -Version 105.2.3

    二. 相关代码介绍

      1. 消费REST服务方法,以Json作为数据格式

    /// <summary>
    /// 取得升级服务端的url地址
    /// </summary>
    /// <returns></returns>
    private String getServerUrl()
    {
    String result = "";
    UpgraderClient upgraderClient = getUpgraderClient();
    if (upgraderClient != null)
    {
    result += "http://" + upgraderClient.serverIP +
    ":" + upgraderClient.serverPort +
    "/upgraderServer/service/upgrade.do";
    }
    return result;
    }

    /// <summary>
    /// 测试与升级服务端的连接
    /// </summary>
    /// <returns></returns>
    public bool testConnect()
    {
    FileRequest fileReq = new FileRequest();
    fileReq.type = (int)RequestType.TEST_CONNECT;
    FileResponse rep = null;
    try
    {
    RestClient client = new RestClient(getServerUrl());
    RestRequest request = new RestRequest(Method.POST);
    request.AddJsonBody(fileReq);
    RestResponse<FileResponse> response = (RestResponse<FileResponse>)client.Execute<FileResponse>(request);
    rep = response.Data;
    } catch
    {
    throw new Exception("连接远程服务端失败!");
    }
    return rep.status == 200;
    }


    复制代码
    /// <summary>
    /// 取得升级服务端的url地址
    /// </summary>
    /// <returns></returns>
    private String getServerUrl()
    {
        String result = "";
        UpgraderClient upgraderClient = getUpgraderClient();
        if (upgraderClient != null)
        {
            result += "http://" + upgraderClient.serverIP +
                ":" + upgraderClient.serverPort +
                "/upgraderServer/service/upgrade.do";
        }
        return result;
    }
    
    /// <summary>
    /// 测试与升级服务端的连接
    /// </summary>
    /// <returns></returns>
    public bool testConnect()
    {
        FileRequest fileReq = new FileRequest();
        fileReq.type = (int)RequestType.TEST_CONNECT;
        FileResponse rep = null;
        try
        {
            RestClient client = new RestClient(getServerUrl());
            RestRequest request = new RestRequest(Method.POST);
            request.AddJsonBody(fileReq);
            RestResponse<FileResponse> response = (RestResponse<FileResponse>)client.Execute<FileResponse>(request);
            rep = response.Data;
        } catch
        {
            throw new Exception("连接远程服务端失败!");
        }
        return rep.status == 200;
    }
    复制代码
  • 相关阅读:
    架构,改善程序复用性的设计(目录)
    如何让你的系统配置文件更合理
    MVC验证(自动在基类中验证实体的数据有效性),本人最满意的作品之一
    MVC验证(只验证指定字段)
    Redis学习笔记~实现消息队列比MSMQ更方便
    FRG图像文件格式(四):编码技术
    缓冲区
    Oracle体系结构及备份(十一)——bcakgroundprocess
    Excel编程(2)自动填充
    设计模式:策略模式
  • 原文地址:https://www.cnblogs.com/lizhigang/p/15523183.html
Copyright © 2011-2022 走看看