1

我已经实施了 Amila Suriarachchi 的这篇博文中描述的步骤:

http://wso2.com/library/articles/2012/10/implementing-restful-services-wso2-esb

我已经完成了上面帖子中提到的所有事情,并且我的 API 调用 URL 为:

http://10.224.188.113:8280/students 

对于学生 API。

现在在帖子中,它给出了三个步骤:

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

添加更新和删除和获取。但我的问题是,我可以在不使用 curl 的情况下进行上述操作吗?我可以访问休息服务的网址http://10.224.188.113:8280/students。现在我的问题是,因为我必须让外部世界可以访问它,所以我必须创建这个休息服务的代理,所以我怎样才能制作上面提供所有操作的休息服务的代理。期待您的回答。提前致谢

4

2 回答 2

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

希望这可以帮助您解决问题。

于 2013-06-20T05:36:28.807 回答
0

您可以从 APIManager 指向该 API,使其可用于外部世界。或者,允许外部世界直接访问您的后端 api,但这取决于您的用户和用例。在 APIManger 中,我们集成了swagger,它会自动生成 API 指南,以便用户可以看到 API 中可用操作的详细信息

于 2013-06-19T18:02:25.523 回答