func SetConfiguration()

in seata/config.go [69:105]


func SetConfiguration(data map[string]string, configType ConfigType) (string, error) {
	urlStr := HTTPProtocol + GetAuth().GetAddress()
	switch configType {
	case RegistryConf:
		urlStr = urlStr + RegistryConfigurationURL
	case ConfigCenterConf:
		urlStr = urlStr + ConfigCenterConfigurationURL
	default:
		urlStr = urlStr + ConfigurationURL
	}
	request, err := BuildPostRequestWithMapData(urlStr, data)
	if err != nil {
		return "", err
	}

	resp, err := (&http.Client{}).Do(request)
	if err != nil {
		return "", err
	}
	defer resp.Body.Close()
	body, err := io.ReadAll(resp.Body)
	if err != nil {
		return "", err
	}

	var response DiffConfigResponse
	err = json.Unmarshal(body, &response)
	if err != nil {
		return "", err
	}

	if response.Code != CodeOK {
		return "", errors.New(response.Message)
	}

	return FormatDiffResponse(response.Data), nil
}