首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >spring-cloud-config匹配资源,但不将配置返回给客户端。

spring-cloud-config匹配资源,但不将配置返回给客户端。
EN

Stack Overflow用户
提问于 2022-01-20 08:21:58
回答 1查看 73关注 0票数 0

Spring (Version2.2.0.RELEASE)似乎匹配批准的资源(在日志中,相关文档是从yml加载的),但不将此配置的内容返回给客户端。我向Postman注入了一个类似的查询,响应有效负载如下:

来自配置服务器的响应有效负载

代码语言:javascript
复制
{
    "name": "core-application",
    "profiles": [
        "user,local,dev,quick"
    ],
    "label": null,
    "version": null,
    "state": null,
    "propertySources": []
}

配置服务器的相关日志(带有--debug选项) :

代码语言:javascript
复制
2022-01-20 09:01:49.328 [nio-8090-exec-1] INFO  cat].[localhost].[/] - Initializing Spring DispatcherServlet 'dispatcherServlet'
2022-01-20 09:01:49.329 [nio-8090-exec-1] INFO  et.DispatcherServlet - Initializing Servlet 'dispatcherServlet'
2022-01-20 09:01:49.329 [nio-8090-exec-1] DEBUG et.DispatcherServlet - Detected StandardServletMultipartResolver
2022-01-20 09:01:49.340 [nio-8090-exec-1] DEBUG et.DispatcherServlet - enableLoggingRequestDetails='false': request parameters and headers will be masked to prevent unsafe logging of potentially sensitive data
2022-01-20 09:01:49.340 [nio-8090-exec-1] INFO  et.DispatcherServlet - Completed initialization in 11 ms
2022-01-20 09:01:49.353 [nio-8090-exec-1] DEBUG et.DispatcherServlet - GET "/core-application/user,local,dev,quick", parameters={}
2022-01-20 09:01:49.360 [nio-8090-exec-1] DEBUG appingHandlerMapping - Mapped to org.springframework.cloud.config.server.environment.EnvironmentController#defaultLabel(String, String)
2022-01-20 09:01:49.743 [nio-8090-exec-1] DEBUG ginTrackedYamlLoader - Loading from YAML: URL [file:C:/Users/Edouard/sources/instantconfig/applications/core-application/core-application.yml]
2022-01-20 09:01:49.758 [nio-8090-exec-1] DEBUG ginTrackedYamlLoader - Merging document (no matchers set): {NETWORK_SQL_SUFFIX=_${NETWORK}}
2022-01-20 09:01:49.758 [nio-8090-exec-1] DEBUG ginTrackedYamlLoader - Loaded 1 document from YAML resource: URL [file:C:/Users/Edouard/sources/instantconfig/applications/core-application/core-application.yml]
2022-01-20 09:01:49.819 [nio-8090-exec-1] DEBUG ginTrackedYamlLoader - Loading from YAML: URL [file:C:/Users/Edouard/sources/instantconfig/applications/core-application/core-application-dev.yml]
2022-01-20 09:01:49.820 [nio-8090-exec-1] DEBUG ginTrackedYamlLoader - Merging document (no matchers set): {configuration.profiles.default=dev}
2022-01-20 09:01:49.820 [nio-8090-exec-1] DEBUG ginTrackedYamlLoader - Loaded 1 document from YAML resource: URL [file:C:/Users/Edouard/sources/instantconfig/applications/core-application/core-application-dev.yml]
2022-01-20 09:01:49.852 [nio-8090-exec-1] DEBUG ginTrackedYamlLoader - Loading from YAML: URL [file:C:/Users/Edouard/sources/instantconfig/applications/core-application/core-application-quick.yml]
2022-01-20 09:01:49.853 [nio-8090-exec-1] DEBUG ginTrackedYamlLoader - Merging document (no matchers set): {core.cache.loader={operators.exclude=, interfaces.exclude=GTFS,GTFSRT,GTFSRT_DISRUPTIONS,STIB_DISRUPTIONS,STIB_SCHEDULES_RT}}
2022-01-20 09:01:49.853 [nio-8090-exec-1] DEBUG ginTrackedYamlLoader - Loaded 1 document from YAML resource: URL [file:C:/Users/Edouard/sources/instantconfig/applications/core-application/core-application-quick.yml]
2022-01-20 09:01:49.878 [nio-8090-exec-1] DEBUG ot.SpringApplication - Loading source class org.springframework.boot.autoconfigure.context.PropertyPlaceholderAutoConfiguration
2022-01-20 09:01:49.881 [nio-8090-exec-1] DEBUG eApplicationListener - Activated activeProfiles user,local,dev,quick
2022-01-20 09:01:49.881 [nio-8090-exec-1] DEBUG eApplicationListener - Loaded config file 'file:C:/Users/Edouard/sources/instantconfig/applications/core-application/core-application.yml' (file:C:/Users/Edouard/sources/instantconfig/applications/core-application/core-application.yml)
2022-01-20 09:01:49.882 [nio-8090-exec-1] DEBUG eApplicationListener - Loaded config file 'file:C:/Users/Edouard/sources/instantconfig/applications/core-application/core-application-dev.yml' (file:C:/Users/Edouard/sources/instantconfig/applications/core-application/core-application-dev.yml) for profile dev
2022-01-20 09:01:49.882 [nio-8090-exec-1] DEBUG eApplicationListener - Loaded config file 'file:C:/Users/Edouard/sources/instantconfig/applications/core-application/core-application-quick.yml' (file:C:/Users/Edouard/sources/instantconfig/applications/core-application/core-application-quick.yml) for profile quick
2022-01-20 09:01:49.903 [nio-8090-exec-1] DEBUG eportLoggingListener - 


============================
CONDITIONS EVALUATION REPORT
============================


Positive matches:
-----------------

   PropertyPlaceholderAutoConfiguration#propertySourcesPlaceholderConfigurer matched:
      - @ConditionalOnMissingBean (types: org.springframework.context.support.PropertySourcesPlaceholderConfigurer; SearchStrategy: current) did not find any beans (OnBeanCondition)


Negative matches:
-----------------

    None


Exclusions:
-----------

    None


Unconditional classes:
----------------------

    None



2022-01-20 09:01:49.965 [nio-8090-exec-1] DEBUG eBodyMethodProcessor - Using 'application/json', given [*/*] and supported [application/json, application/*+json, application/json, application/*+json]
2022-01-20 09:01:49.968 [nio-8090-exec-1] DEBUG eBodyMethodProcessor - Writing [Environment [name=core-application, profiles=[user,local,dev,quick], label=null, propertySources=[], (truncated)...]
2022-01-20 09:01:49.994 [nio-8090-exec-1] DEBUG et.DispatcherServlet - Completed 200 OK

知道为什么配置的内容不返回给客户端吗?

EN

回答 1

Stack Overflow用户

发布于 2022-01-20 10:56:25

我终于找到了原因:

配置服务器应用程序中的LOCAL_GIT_REPOSITORY环境变量必须用“正则”斜杠(“/”)定义,而我使用的是带有反斜杠的windows路径(“\”)。

棘手的部分是服务器部分处理windows路径(如调试日志所示,.yml文件被找到并正确加载)。故障几乎发生在进程的末尾,在clean()类的NativeEnvironmentRepository函数中:在向配置客户端发送响应之前,该函数比较yml文件的位置以更正“模式路径”,这是windows路径未被正确处理的地方。(位置是计算的,混合了两种斜杠:C:\Users\Edouard\myconfig/myapp/)

也许弹簧云配置抛出一个正确的错误,或者正确地处理它是个好主意。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70782829

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档