我有一个基于asp.net核心的微服务项目。在此项目中,我将使用Ocelot nuget包实现API Gateway。该项目托管在我本地开发环境中的基于Linux的Docker容器中。
通过api网关测试微服务网址时,我发现错误400。
以下是配置文件:
{
"ReRoutes": [
{
"DownstreamPathTemplate": "/api/{everything}",
"DownstreamScheme": "http",
"DownstreamHostAndPorts": [
{
"Host": "authoradmin.command.api",
"Port": 80
}
],
"UpstreamPathTemplate": "/api/ad/{everything}",
"UpstreamHttpMethod": [ "POST", "PUT", "GET" ]
}
],
"GlobalConfiguration": {
"RequestIdKey": null,
"AdministrationPath": null
}
}
我的Docker文件如下:
authoradmin.command.api:
image: ${DOCKER_REGISTRY-}authoradmincommandapi
build:
context: .
dockerfile: CommandStack/AuthorAdmin.Command.API/Dockerfile
depends_on:
- rabbitmq
links:
- rabbitmq
Docker替代如下:
authoradmin.command.gateway:
environment:
- ASPNETCORE_ENVIRONMENT=Development
- IdentityUrl=http://identity.api
ports:
- "50106:80"
volumes:
-./CommandStack/AuthorAdmin.Command.API:/app/configuration
我需要使用apigeteway访问我的api。