java:swagger-codegen生成CSharp(C#) Client

Posted 10km

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java:swagger-codegen生成CSharp(C#) Client相关的知识,希望对你有一定的参考价值。

基于Swagger的在线文档,Swagger提供了生成多种语言client端代码的功能。
如果Java Web服务基于Swagger提供了在线文档,基于服务运行时提供的在线文档,就可以生成client端代码,本文以CSharp(C#)为例说明生成CSharp Client的过程

使用 Swagger提供的Client端代码生成工具swagger-codegen生成的CSharp client代码通过hello-world服务的HTTP服务接口(RESTful Web API)与Jav Web服务交互。

swagger-codegen生成的是一个完整的包含Visual Studio编译工程文件的CSharp代码,将生成的CSharp 代码用Visual Studio编译成动态库,就可以为CSharp 项目调用。下介绍swagger-codegen的生成CSharp Client的过程。

运行swagger-codegen 需要JDK 7(及以上)支持.

下载 swagger-codegen

从maven中央仓库下载 swagger-codegen (io.swagger:swagger-codegen-cli:2.4.20)

下载位置:https://repo1.maven.org/maven2/io/swagger/swagger-codegen-cli/2.4.20/swagger-codegen-cli-2.4.20.jar
Linux或MacOS下可以用wget下载:

	wget https://repo1.maven.org/maven2/io/swagger/swagger-codegen-cli/2.4.20/swagger-codegen-cli-2.4.20.jar

生成代码

swagger-codegen-cli-2.4.20.jar是一个可以独立运行的Java程序,只需要有JRE支持就可以支行,如下命令行执行swagger-codegen-cli生成CSharp代码:

Windows CMD:

    java -jar swagger-codegen-cli-2.4.20.jar generate ^
    		-i http://facelog.facelib.net:26413/v2/api-docs ^
    		-l csharp ^
    		--api-package facelog --model-package facelog.model ^
    		-o facelog-client-csharp 

client\\facelog\\csharp 为指定生成代码的输出文件夹

Linux:

java -jar swagger-codegen-cli-2.4.20.jar generate \\
		-i http://facelog.facelib.net:26413/v2/api-docs \\
		-l csharp \\
		--api-package facelog --model-package facelog.model \\
		-o facelog-client-csharp

facelog.facelib.net:26413为运行的facelog服务主机名和HTTP端口号,可以直接用于测试。swagger-codegen将从运行的facelog服务的Swagger在线文档中获取服务接口信息,据此生成CSharp Cient代码。

facelog-client-csharp 为指定生成代码的输出文件夹

调用示例

参见生成代码文件夹下的README.md

以上是关于java:swagger-codegen生成CSharp(C#) Client的主要内容,如果未能解决你的问题,请参考以下文章

修改shell 将当前shell(默认是bash B SHELL )改为csh C SHELL

python新创建的脚本文件无法使用popen执行,求解

如何在 bash 中获取 csh 脚本来设置环境 [关闭]

将参数从 csh 传递给程序,就像它们一样

如果内置命令,则检查 bash 和 csh

linux 新建用户后,在用户目录下没有.bash_profile文件生成