[解決済み】クエリ文字列に値を追加する
2022-04-16 21:08:17
質問
以下のようなURLのセットがリストになっています。
- http://somesite.com/backup/lol.php?id=1&server=4&location=us
- http://somesite.com/news.php?article=1&lang=ja
以下のコードでクエリ文字列を取得することに成功しました。
myurl = longurl.Split('?');
NameValueCollection qs = HttpUtility.ParseQueryString(myurl [1]);
foreach (string lol in qs)
{
// results will return
}
のようなパラメータを返すだけです。 id , サーバー , 場所 などを、提供されたURLに基づいて表示します。
必要なのは、既存のクエリ文字列に値を追加/追記することです。
例えばURLの場合。
http://somesite.com/backup/index.php?action=login&attempts=1
クエリ文字列のパラメータの値を変更したいのですが。
action=login1
試行回数=11回
見ての通り、各値に "1" を追加しています。私は、異なるクエリ文字列を含む文字列から一連のURLを取得し、最後の&で各パラメータに値を追加し、再びリストにそれらを追加する必要があります。
どのように解決するのですか?
を使用することができます。
HttpUtility.ParseQueryString
メソッドと
UriBuilder
これは、パースやURLエンコードなどを気にすることなく、クエリ文字列のパラメータを操作するための素晴らしい方法を提供します。
string longurl = "http://somesite.com/news.php?article=1&lang=en";
var uriBuilder = new UriBuilder(longurl);
var query = HttpUtility.ParseQueryString(uriBuilder.Query);
query["action"] = "login1";
query["attempts"] = "11";
uriBuilder.Query = query.ToString();
longurl = uriBuilder.ToString();
// "http://somesite.com:80/news.php?article=1&lang=en&action=login1&attempts=11"
関連
-
[解決済み】別のスレッドがこのオブジェクトを所有しているため、呼び出し側のスレッドはこのオブジェクトにアクセスできない
-
[解決済み] C#のStringとstringの違いは何ですか?
-
[解決済み] JavaScriptでクエリ文字列の値を取得するにはどうすればよいですか?
-
[解決済み] Javaはパラメータのデフォルト値をサポートしていますか?
-
[解決済み] Node.js上のExpress.jsでGET(クエリ文字列)変数を取得する方法とは?
-
[解決済み] Javascriptオブジェクトのクエリ文字列エンコーディング
-
[解決済み] クエリ文字列の最大長を教えてください。
-
[解決済み】大文字・小文字を区別しない「Contains(string)
-
[解決済み】ASP.NET Web APIでクエリ文字列のパラメータを任意に設定する方法
-
[解決済み】System.Net.HttpClientのget用クエリ文字列の構築
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】エラー。「戻り値を変更できません」 C#
-
[解決済み】C#で四捨五入する方法
-
[解決済み] [Entity Framework 4.1でエンティティに関連オブジェクトを追加する際に、エンティティオブジェクトをIEntityChangeTracker.の複数のインスタンスから参照できない。
-
[解決済み】パディングが無効で、削除できない?
-
[解決済み] UnityでOnCollisionEnterが呼ばれない
-
[解決済み] EntityTypeにキーが定義されていないエラー
-
[解決済み】"指定されたパスのフォーマットはサポートされていません。"
-
[解決済み】名前 'ViewBag' が現在のコンテキストに存在しない - Visual Studio 2015
-
[解決済み】データが存在しないのに読み込もうとする試みが無効である
-
[解決済み] .NET Coreでクエリ文字列を解析して変更する