Apigee的Api网关负责整个API生命周期的管理,包括请求路由、协议转换、缓存、限流等功能,可以集中管理多个API,并提供API分析,安全性和可用性监控等服务。而Api代理仅限于在执行API请求时拦截请求,添加必要的校验和转换,然后转发到后端服务。
使用Apigee的Api网关需要在Apigee平台上进行配置。下面是一个简单的示例:
$ curl -u your_username:your_password https://api.enterprise.apigee.com/v1/organizations/{org_name}/apis -d '{"name" : "myapi", "proxyType": "api"}'
$ curl -u your_username:your_password https://api.enterprise.apigee.com/v1/organizations/{org_name}/apis/myapi/revisions/1/resources -d '{ "paths": [ "/hello" ]}'
$ curl -u your_username:your_password https://api.enterprise.apigee.com/v1/organizations/{org_name}/apis/myapi/revisions/1/resources/hello -d '[ { "description": "Returns a friendly greeting", "methods": [ "GET" ], "proxy": { "url": "http://mocktarget.apigee.net" } } ]'
$ curl -u your_username:your_password https://api.enterprise.apigee.com/v1/organizations/{org_name}/environments/test/apis/myapi/revisions/1/deployments -X POST -H "Content-Type:application/json" -d '{"delay":5}'
$ curl http://yourorg-test.apigee.net/myapi/hello
这样就完成了一个简单的API网关的配置和部署。