golang修改 url 路径中的查询参数

请编写一个函数 函数能对 urlpath 中的查询参数进行修改
ChatGPT 当然可以!以下是一个使用 Go 语言编写的函数示例,该函数可以修改 URL 路径中的查询参数:

package main

import (
    "fmt"
    "net/url"
    "strings"
)

func modifyQueryParameter(urlPath, paramKey, paramValue string) (string, error) {
    parsedURL, err := url.Parse(urlPath)
    if err != nil {
        return "", err
    }

    queryValues, err := url.ParseQuery(parsedURL.RawQuery)
    if err != nil {
        return "", err
    }

    // Update or add the parameter
    queryValues.Set(paramKey, paramValue)

    parsedURL.RawQuery = queryValues.Encode()
    return parsedURL.String(), nil
}

func main() {
    urlPath := "https://example.com/path?param1=value1&param2=value2"
    paramKey := "param1"
    paramValue := "new_value"

    newURL, err := modifyQueryParameter(urlPath, paramKey, paramValue)
    if err != nil {
        fmt.Println("Error:", err)
        return
    }

    fmt.Println("Modified URL:", newURL)
}

这个示例代码定义了一个名为 modifyQueryParameter 的函数,它接受三个参数:urlPath 是原始的 URL 路径,paramKey 是要修改或添加的查询参数的键,paramValue 是要设置的查询参数的值。函数会返回修改后的 URL 字符串。

在 main 函数中,你可以看到如何使用这个函数来修改 URL 路径中的查询参数。将示例中的 urlPath、paramKey 和 paramValue 替换为你实际想要修改的值,然后运行代码即可。

请确保在使用代码之前,先安装 Go 编程环境,并根据需要进行适当的修改和测试。

本文链接:参与评论 »

--EOF--

提醒:本文最后更新于 287 天前,文中所描述的信息可能已发生改变,请谨慎使用。

Comments