Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

是否考虑支持接口转发的功能 #227

Open
itbencn opened this issue Jul 10, 2023 · 5 comments
Open

是否考虑支持接口转发的功能 #227

itbencn opened this issue Jul 10, 2023 · 5 comments

Comments

@itbencn
Copy link

itbencn commented Jul 10, 2023

我需要将自己声明的接口再次基于自身项目提供外部访问
目前的做法是添加API控制器配合Swagger,然后挨个暴露接口,效率实在太低了,而且需要维护多个地方

需求场景
1.上游接口不支持Swagger等在线调试时,基于上面的描述,我既声明了使用接口,也能配合swagger快速实现对上游接口的在线调试
2.接口转发,在基于上游接口的基础上扩展自己新的接口然后一并提供给下游访问

@xljiulang
Copy link
Collaborator

做转发层的话,可以关注YARP项目

@EzrealJ EzrealJ added the 等待反馈(needs feedback) 这意味着需要来自发起者的反馈(This means that feedback from the author is required) label Jul 11, 2023
@itbencn
Copy link
Author

itbencn commented Jul 11, 2023

做转发层的话,可以关注YARP项目

第一个需求场景应该也常见呀,一举三得,既能内部代码调用,也能在线测试,还能提供给别人访问

@EzrealJ
Copy link
Collaborator

EzrealJ commented Jul 13, 2023

首先回答第二点:

WebApiClient专注于作为客户端,从命名上可以看出,它是一个Client,而且它将会专注于Client,目前我们没有计划加入转发的功能。
另一个方面来讲,由于其基于HttpClient的特性,使它不可能作为一个合格的Proxy,在此不深入探讨。或许你可以引入更加专业的库例如Yarp来组合完成你的需求。

其次对于第一点:

我没有太理解你的意思,按照我粗略的理解,你是希望在声明了WebApiClient的接口之后,也能启动一个UI,类似于PostMan、ApiFox或者其它类似产品一样,可以快速的填写参数。不必编写单元测试代码即可调用上游接口吗? @itbencn

@itbencn
Copy link
Author

itbencn commented Sep 9, 2023

首先回答第二点:

WebApiClient专注于作为客户端,从命名上可以看出,它是一个Client,而且它将会专注于Client,目前我们没有计划加入转发的功能。 另一个方面来讲,由于其基于HttpClient的特性,使它不可能作为一个合格的Proxy,在此不深入探讨。或许你可以引入更加专业的库例如Yarp来组合完成你的需求。

其次对于第一点:

我没有太理解你的意思,按照我粗略的理解,你是希望在声明了WebApiClient的接口之后,也能启动一个UI,类似于PostMan、ApiFox或者其它类似产品一样,可以快速的填写参数。不必编写单元测试代码即可调用上游接口吗? @itbencn

第一点正确,也不用完全弄个新ui显示毕竟比较麻烦,可以考虑从兼容swagger ui方向靠

@EzrealJ
Copy link
Collaborator

EzrealJ commented Sep 12, 2023

感谢提议,会讨论这一事项。

@EzrealJ EzrealJ removed the 等待反馈(needs feedback) 这意味着需要来自发起者的反馈(This means that feedback from the author is required) label Sep 12, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants