public List<PropertySource<?>> parseNacosData(String configName, String configValue,
			String extension) throws IOException {
		if (!StringUtils.hasLength(configValue)) {
			return Collections.emptyList();
		}
		if (!StringUtils.hasLength(extension)) {
			extension = this.getFileExtension(configName);
		}
		for (PropertySourceLoader propertySourceLoader : propertySourceLoaders) {
			if (!canLoadFileExtension(propertySourceLoader, extension)) {
				continue;
			}
			NacosByteArrayResource nacosByteArrayResource;
			if (propertySourceLoader instanceof PropertiesPropertySourceLoader) {
				// PropertiesPropertySourceLoader internal is to use the ISO_8859_1,
				// the Chinese will be garbled, needs to transform into unicode.
				nacosByteArrayResource = new NacosByteArrayResource(
						NacosConfigUtils.selectiveConvertUnicode(configValue).getBytes(),
						configName);
			}
			else {
				nacosByteArrayResource = new NacosByteArrayResource(
						configValue.getBytes(), configName);
			}
			nacosByteArrayResource.setFilename(getFileName(configName, extension));
			List<PropertySource<?>> propertySourceList = propertySourceLoader
					.load(configName, nacosByteArrayResource);
			if (CollectionUtils.isEmpty(propertySourceList)) {
				return Collections.emptyList();
			}
			return propertySourceList.stream().filter(Objects::nonNull)
					.map(propertySource -> {
						if (propertySource instanceof EnumerablePropertySource enumerablePropertySource) {
							String[] propertyNames = enumerablePropertySource
									.getPropertyNames();
							if (propertyNames != null && propertyNames.length > 0) {
								Map<String, Object> map = new LinkedHashMap<>();
								Arrays.stream(propertyNames).forEach(name -> {
									map.put(name, propertySource.getProperty(name));
								});
								return new OriginTrackedMapPropertySource(
										propertySource.getName(), map, true);
							}
						}
						return propertySource;
					}).collect(Collectors.toList());
		}
		return Collections.emptyList();
	}
Parsing nacos configuration content.
@param configName name of nacos-config
@param configValue value from nacos-config
@param extension identifies the type of configValue
@return result of Map
@throws IOException thrown if there is a problem parsing config.
spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/parser/NacosDataParserHandler.java