ホームページ > バックエンド開発 > Golang > Go はインプレース URL パラメータ マッピングを処理できますか?

Go はインプレース URL パラメータ マッピングを処理できますか?

Mary-Kate Olsen
リリース: 2024-11-11 01:46:02
オリジナル
394 人が閲覧しました

Can Go Handle Inplace URL Parameter Mapping?

Go のインプレース URL パラメーター

ネイティブ Go には、インプレース URL パラメーター マッピングの基本的なメカニズムがありません。ただし、このような機能の実装は比較的簡単です。

カスタム ソリューション

次のアプローチは外部ライブラリに依存しません:

  1. 分割コンポーネントへの URL パス (r.URL.Path)。
  2. 各コンポーネントを分析します:

    • 最初のコンポーネントが有効な整数の場合、それを URL パラメータとして扱います.
    • パラメータが見つからないか、パラメータが無効な場合は、デフォルトのパラメータ値 (および 2 番目のコンポーネント) を返します。

コード サンプル

func getCode(r *http.Request, defaultCode int) (int, string) {
    p := strings.Split(r.URL.Path, "/")

    if len(p) == 1 {
        return defaultCode, p[0]
    } else if len(p) > 1 {
        code, err := strconv.Atoi(p[0])
        if err == nil {
            return code, p[1]
        } else {
            return defaultCode, p[1]
        }
    } else {
        return defaultCode, ""
    }
}
ログイン後にコピー

このコードは、getCode() 関数を使用してリクエスト ハンドラー内で呼び出すことができます。

以上がGo はインプレース URL パラメータ マッピングを処理できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート