[解決済み] スペースはいつプラス(+)または%20にエンコードされるべきですか?重複
2022-03-17 05:47:38
質問
時々、スペースがURLエンコードされて
+
記号に、またある時は
%20
. この違いは何でしょうか、またなぜこのようなことが起こるのでしょうか。
どのように解決するのですか?
+
はスペースを意味します。
のみ
で
application/x-www-form-urlencoded
のコンテンツ(URLのクエリ部分など)に適用されます。
http://www.example.com/path/foo+bar/path?query+name=query+value
このURLの場合、パラメータ名は
query name
にはスペースが入り、値は
query value
をスペースで囲んでいますが、パスの中のフォルダ名は文字通り
foo+bar
,
ではなく
foo bar
.
%20
は、これらの文脈のいずれにおいても、スペースをエンコードする有効な方法です。したがって、URLの一部に含めるために文字列をURLエンコードする必要がある場合は、常にスペースを
%20
で、プラスは
%2B
. これは、例えば
encodeURIComponent()
はJavaScriptで行う。残念ながら
urlencode
はPHPで行う(
生urlencode
の方が安全です)。
参照
関連
最新
-
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 実装 サイバーパンク風ボタン