我已经实施了这篇博文中描述的步骤Amila Suriarachchi:
http://wso2.com/library/articles/2012/10/implementing-restful-services-wso2-esb
我已完成上述Post中提到的所有内容,并且我将API调用URL设置为:
http://10.224.188.113:8280/students
适用于StudentAPI。
现在在邮政中它已经给出了三个步骤:
1. To add a new student
curl --request POST -v --data @addPayload.xml -H "Content-type: application/xml" http://localhost:8280/students/003
2. To get the added student details
curl --request GET -v http://localhost:8280/students/003
3. To update the student
curl --request PUT -v --data @updatePayload.xml -H "Content-type: application/xml" http://localhost:8280/students/003
4. To delete the student
curl --request DELETE -v http://localhost:8280/students/003
添加更新,删除和get.But我的问题是,我可以不使用curl进行上述操作。
我可以访问休息服务http://10.224.188.113:8280/students
的网址。
现在我的问题是,因为我必须让这个外部世界可访问我必须创建这个休息服务的代理,所以我如何能够代理上述休息服务,它为我提供了所有的操作。
期待您的回答。提前致谢
答案 0 :(得分:2)
在您提到的文章中,Amila解释了如何在ESB上定义REST服务。
CURL是一种测试REST API的方法。访问REST API的另一种方法是使用Web浏览器。
任何可以发送REST请求(GET,POST,DELETE,UPDATE)的客户端程序都可以访问您定义的学生API而不会出现任何问题。您需要在URL中托管服务器,并为外部世界提供该URL的可访问性。 API Manager是一种可用于将API发布到外部世界的产品。但这没有必要。
如果要将这些作为SOAP服务公开给SOAP客户端,您也可以这样做。为此,您可以使用以下链接。
http://docs.wso2.org/wiki/display/ESB460/Using+REST+with+a+Proxy+Service
希望这可以帮助您找出问题所在。
答案 1 :(得分:0)
您可以从APIManager指出该API,使其可用于外部世界。或者,允许外部世界,直接访问您的后端api,但这取决于您的用户和用例。 在APIManger中,我们整合了swagger,它会自动生成API指南,因此用户可以查看API中可用操作的详细信息